Publish Date: Nov 12, 2018
This article guides on implementing API versioning in ASP.NET Core, highlighting its simplicity compared to ASP.NET Web API. It covers installing the
Microsoft.AspNetCore.Mvc.Versioning
package, setting up default versioning, and various versioning methods including
URL path segment and
header versioning.
The article also discusses deprecating older API versions and excluding specific controllers from versioning using the
ApiVersionNeutral
attribute. The process is illustrated with concise examples and code snippets, offering a practical approach to API versioning in ASP.NET Core applications.
Publish Date: Nov 9, 2018This article covers implementing route constraints in ASP.NET Core to validate route parameter values. It highlights two methods:
- Inline constraints: using route templates directly
- MapRoute constraints: using classes that follow the
IRouteConstraint
interface
The article also describes creating custom constraints for specific validation needs, such as checking if a string starts with a particular value. This feature in ASP.NET Core ensures that only valid values are passed to action methods, enhancing API reliability and functionality.
Publish Date: Jul 5, 2018
The article explains the use of
DebuggerTypeProxy
for enhancing debugging. It illustrates how to display complex or less readable properties (like
Hex values) in a more understandable format using a proxy class. By applying the
DebuggerTypeProxy
attribute to a class, the values are shown in the debugger in a customized way, as defined in the proxy class. This feature significantly improves the
debugging experience by providing clearer insights into the data structures being inspected.
Publish Date: Jul 3, 2018
Sometimes, a great deal of time is wasted and a large amount of redundant code is generated when creating random data, especially when writing tests. A library named GenFu has been created that takes on the responsibility of creating random data. This library is open source, and you can find its source code on GitHub.