.NET Beyond the Demos - Part 1

.NET Beyond the Demos - Part 1

Part 1 - Introduction - This post
Part 2 - The Architecture
Part 3 - The DTOs

I like code demos. They're good for getting you familiar with how a specific technology works. However, many times, it's hard to get a feel for how different technologies work together to create a larger ecosystem in the enterprise environment.

For instance, when I started my latest job back in June of 2017, I was instantly able to begin contributing to the team in a productive manner. Initially, I was assigned regular maintenance duties on the existing website, but there were plans in place to move to a different architecture that utilized Entity Framework, Web API, and .NET Core.

Many people would argue that Entity Framework and .NET are dead. I disagree. I find that .NET and C# are constantly evolving to meet my needs. Sure, they may not be the latest hotness, but they're based on a firm foundation and build upon a great language.

It seemed daunting at first, but I worked with the other architects on the team and we have successfully built a full Continuous Integration/Continuous Deployment environment that manages our ASP.NET Core Web API, Entity Framework, and "classic" ASP.NET MVC applications.

I'd like to cover as much of what we're doing as I can without revealing any proprietary information as I feel there is a lot to learn from what we've accomplished.

Some topics I'd like to cover are:

  • How to integrate WebApi in an enterprise environment where the API is more strongly coupled to the applications that consume it
  • A cross-platform Web Api client that can be used from ASP.NET MVC or from Xamarin (UWP, Android, and iOS)
  • A common library that contains shared Data Transfer objects (DTOs), enabling maximum code reuse across the application layers
  • Strategies for abstracting Web Api endpoints at the client level, making it easier to code for less experienced developers (and avoiding the pitfalls of hard coding paths in requests)
  • A method to communicate type information to the Web Api server for all calls to enable more maintainable infrastructure on the backend
Michael Earls

Michael Earls

Montgomery, AL, USA
Michael has been a computer nerd since he was ten years old and he begged his parents to buy him a computer for Christmas. In 1982, he was the proud owner of a TI-99/4A. He's been coding since.