Code/Protocol/NetworkVersion.cs

Simple data model representing a networked protocol version. It has Major, Minor, Build integers and a Class string defaulting to "Version" and uses System.Text.Json property name attributes for JSON serialization.

using System.Text.Json.Serialization;

namespace APLib.Protocol;

public sealed class NetworkVersion
{
	[JsonPropertyName( "major" )]
	public int Major { get; set; }
	
	[JsonPropertyName( "minor" )]
	public int Minor { get; set; }
	
	[JsonPropertyName( "build" )]
	public int Build { get; set; }
	
	[JsonPropertyName( "class" )]
	public string Class { get; set; } = "Version";
}