Having MVC pages and API in the same solution can be beneficial. Projects may share a lot of boilerplate code and settings, is easier to maintain and can access API functions directly through DI (if controllers are registered there) instead of going via HTTP. But you may want to separate both URL and code so it is clear what is MVC and what is API.
With .Net Core we finally got some decent/easy to use config system built in by the help of the Options pattern. In short, reading config by deserializing sections of appsettings.json into DI-hosted objects.
I find myself throwing together web API’s and small web apps regularly for various purposes. Each project contains the same setup such as logging, managed config, api areas, api versioning, etc… Often I end up going into a previous project and copy-paste. I thought I would save myself a bit of time by documenting the process for each feature here.
There are various reasons why one would want to support plugins or extensions for an application. It allows third party to extend application, one can isolate development of parts of the application, and pick what to load at runtime. Whatever the motivation, this means loading .dll’s after the application has started, finding interfaces of interest … Read more
The default setup for .Net Core MVC application is to use IoC. You get a Startup.cs file created that contains boilerplate code for IoC. If you want to use the builtin IoC with .Net Core you have to write it yourself. Luckily the HostBuilder makes this easy. HostBuilder is provided by the Generic Host introduced … Read more
Benchmarking method execution through interface, base class, virtual, override, dynamic, reflection and expression trees. In .Net there are many ways to execute a method. The fastest being the straight forward call to a static method. But how does its speed compare to other methods? There are countless reasons why we sometimes can’t just make a … Read more
This is part 2 of 2. These posts are meant to give a basic introduction to voxel engines. In later posts I will dig into optimization techniques and benchmarking. In part 1 I touched on the basics of polygon mesh and voxel graphics. I also touched how a voxel world can be represented in memory … Read more
This is part 1 of 2. These posts are meant to give a basic introduction to voxel engines. In later posts I will dig into optimization techniques and benchmarking. So its that wonderful time of the year again where I play with something of my own choosing, uninterrupted for a few days. I left my … Read more
Intro I have been a developer for somewhere around 30 years now. In my time I have created a few thousand projects of varying sizes, and for every new iteration I try to improve slightly on my previous. I also see a lot of code from others, and most what I see don’t seem care … Read more