这个问题是关于 MVC 4 中的 ASP.NET WebApi,而不是 ASP.NET MVC。
考虑以下 WebApi 模型
public class MyComplex
{
public DateTime? Date { get; set; }
}
由模型绑定作为参数绑定到以下 ApiController 方法
public class MyController : ApiController
{
[HttpPost]
public HttpResponseMessage PostMyComplex(MyComplex id){ .. }
}
如何声明模型绑定器应该期望 MyComplex.Date 的格式?正如我所看到的,当参数本身是 DateTime 类型时,WebApi 中的 Modelbinders 可以解决问题,但是当日期格式是复杂类型的一部分并且我想限制什么是可接受的时,我还没有看到处理日期格式的好方法api。我已经尝试了 Modelbinders 和 ValueProviders,它们似乎都不合适。
我想明确限制可接受的 HttpPosts 格式为 dd-MM-yyyy。