public static void Main(string[] args) { FormData <Unvalidated> formData = FormData <Unvalidated> .CreateFormData("hi there"); FormData <Validated> validFormData = FormData <Unvalidated> .ValidateFormData(formData); new Database().StoreData(validFormData); }