MapToSemanticApiVersionAttribute Class
Definition
- Namespace
- Codebelt.Extensions.Asp.Versioning
- Assemblies
- Codebelt.Extensions.Asp.Versioning.dll
Maps an API implementation to a semantic API version.
public sealed class MapToSemanticApiVersionAttribute : MapToApiVersionAttribute, IApiVersionProvider
- Inheritance
-
ApiVersionsBaseAttributeMapToApiVersionAttributeMapToSemanticApiVersionAttribute
- Implements
-
IApiVersionProvider
- Inherited Members
-
ApiVersionsBaseAttribute.Equals(object)ApiVersionsBaseAttribute.GetHashCode()ApiVersionsBaseAttribute.Versions
Examples
Use MapToSemanticApiVersionAttribute when one implementation advertises multiple semantic API versions and a specific action should handle only one of them. The example constructs the same metadata an action attribute declaration would create and reads back the mapped semantic API version.
using System.Linq;
using Codebelt.Extensions.Asp.Versioning;
namespace Codebelt.Extensions.Asp.Versioning;
public class SemanticActionMapping
{
public string GetMappedVersion()
{
var attribute = new MapToSemanticApiVersionAttribute("1.2.3-alpha+build.5");
var version = attribute.Versions.OfType<SemanticApiVersion>().Single();
return version.ToString();
}
}
Constructors
| Name | Description |
|---|---|
| MapToSemanticApiVersionAttribute(int, int, int, string, string) | Initializes a new instance of the MapToSemanticApiVersionAttribute class. |
| MapToSemanticApiVersionAttribute(string) | Initializes a new instance of the MapToSemanticApiVersionAttribute class. |
See Also
MapToApiVersionAttribute