【发布时间】:2019-03-13 18:39:14
【问题描述】:
所以基本上我有两个类,即 Model 和 DTO,Model 将用于处理 API,而 DTO 将处理数据库(Firestore)。
我有一个 Company 模型,在这个模型中,我在执行 CreateCompany POST 请求时需要 CompanyName。
public class Company
{
public string CompanyId { get; set; }
[Required]
public string CompanyName { get; set; }
}
这是我用来创建员工详细信息的Employee模型,该类中将使用Company模型。
public class Employee
{
public string EmployeeId { get; set; }
public bool? IsFirstLogin { get; set; }
[Required]
public string Name { get; set; }
[Required]
[EmailAddress]
public string PaypalEmail { get; set; }
[Required]
[Phone]
public string PhoneNumber { get; set; }
public Company company { get; set; }
}
现在的问题是当我发出 CreateEmployee POST 请求时,我只需要填写 Employee.company.CompanyId,但是因为在 Company 模型中,Company. CompanyName 之前已设置为 [Required],并且必须同时填写 Employee.company.CompanyName。
所以我在考虑是否有任何方法可以在发出 CreateEmployee POST 请求期间禁用模型验证。或者我应该只在 CreateCompany POST 请求期间启用模型验证?
【问题讨论】:
标签: c# asp.net asp.net-web-api model-validation