Vogen: generate value objects around .NET types

Vogen wraps primitives in generated domain types. Its CustomerId example shows how to obtain comparisons and controlled construction without writing repetitive boilerplate.

Vogen wraps primitives in generated domain types. Its CustomerId example shows how to obtain comparisons and controlled construction without writing repetitive boilerplate.