VehicleNet.VIN
1.0.0
dotnet add package VehicleNet.VIN --version 1.0.0
NuGet\Install-Package VehicleNet.VIN -Version 1.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="VehicleNet.VIN" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="VehicleNet.VIN" Version="1.0.0" />
<PackageReference Include="VehicleNet.VIN" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add VehicleNet.VIN --version 1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: VehicleNet.VIN, 1.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package VehicleNet.VIN@1.0.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=VehicleNet.VIN&version=1.0.0
#tool nuget:?package=VehicleNet.VIN&version=1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
VehicleNet.VIN
VehicleNet.VIN is a lightweight .NET library for:
- validating VINs
- parsing VIN parts
- generating algorithmically correct mock VINs (including valid checksum)
Install
dotnet add package VehicleNet.VIN
Features
IVinValidatorValidate(string?)IsValid(string?)
IVinParserParse(string)
IVinGeneratorGenerateMockVin(VinGenerationOptions?, Random?)
Dependency Injection
Register VIN services:
using Microsoft.Extensions.DependencyInjection;
using VehicleNet.Vin.Extensions;
var services = new ServiceCollection();
services.AddVehicleVinServices();
using var provider = services.BuildServiceProvider();
Resolve and use:
using VehicleNet.Common.Models.Vin;
using VehicleNet.Vin.Interfaces;
var validator = provider.GetRequiredService<IVinValidator>();
var parser = provider.GetRequiredService<IVinParser>();
var generator = provider.GetRequiredService<IVinGenerator>();
// Generate VIN with options
var vin = generator.GenerateMockVin(new VinGenerationOptions
{
WorldManufacturerIdentifier = "WAU",
ModelYear = 2026,
PlantCode = 'A'
});
var validation = validator.Validate(vin);
if (!validation.IsValid)
{
throw new InvalidOperationException(validation.Error);
}
var parsed = parser.Parse(vin);
Console.WriteLine("Parsed generated VIN:");
Console.WriteLine($" WMI: {parsed.WorldManufacturerIdentifier}");
Console.WriteLine($" VDS: {parsed.VehicleDescriptorSection}");
Console.WriteLine($" VIS: {parsed.VehicleIdentifierSection}");
Console.WriteLine($" Check Digit: {parsed.CheckDigit}");
Console.WriteLine($" Model Year Code: {parsed.ModelYearCode}");
Console.WriteLine($" Model Year: {(parsed.ModelYear.HasValue ? parsed.ModelYear.Value : "N/A")}");
Console.WriteLine($" Plant Code: {parsed.PlantCode}");
Console.WriteLine($" Sequential Number: {parsed.SequentialNumber}");
Generate VIN without options:
var randomVin = generator.GenerateMockVin();
var isValid = validator.IsValid(randomVin); // should be true
VIN rules covered
- 17-character VIN length
- Disallowed ambiguous letters (
I,O,Q) - Transliteration and weighted checksum validation
- Position 9 check digit support (
0-9andX)
Models (from VehicleNet.Common)
VinPartsVinValidationResultVinGenerationOptions
Target framework
- .NET 10 (
net10.0)
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.0)
- VehicleNet.Common (>= 1.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 107 | 8/25/2026 |