c# asp.net web api 中的模型验证日期格式
Model validate date format in c# asp.net web api
我正在映射网络 api 使用模型获取请求复杂类型输入参数,我想验证模型中输入类型的日期格式。
我输入的uri如下
http://localhost:xxxx/api/games/?id=5&date=2018-01-17
在我的游戏控制器中
public IHttpActionResult Get([FromUri]Gamedata) {
if (ModelState.IsValid) {
}
else {
}
}
在我的模型中class
public class Game
{
[Required]
public int? Id { get; set; }
[Required]
public string date { get; set; } // Validate the date format "YYYY-MM-DD"
}
我想验证日期格式 "YYY-MM-DD"。如何实现?我正在阅读 this。但是不知道要用哪个注解?
你可以做到这一点
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy-MM-dd}")]
在你的模型中
public class Game
{
[Required]
public int? Id { get; set; }
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy-MM-dd}")]
public DateTime date { get; set; } // Validate the date format "YYYY-MM-DD"
}
我正在映射网络 api 使用模型获取请求复杂类型输入参数,我想验证模型中输入类型的日期格式。
我输入的uri如下 http://localhost:xxxx/api/games/?id=5&date=2018-01-17
在我的游戏控制器中
public IHttpActionResult Get([FromUri]Gamedata) {
if (ModelState.IsValid) {
}
else {
}
}
在我的模型中class
public class Game
{
[Required]
public int? Id { get; set; }
[Required]
public string date { get; set; } // Validate the date format "YYYY-MM-DD"
}
我想验证日期格式 "YYY-MM-DD"。如何实现?我正在阅读 this。但是不知道要用哪个注解?
你可以做到这一点
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy-MM-dd}")]
在你的模型中
public class Game
{
[Required]
public int? Id { get; set; }
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy-MM-dd}")]
public DateTime date { get; set; } // Validate the date format "YYYY-MM-DD"
}