Rob*_*nik 4 asp.net-mvc parsing timespan model-binding
我的Web应用程序中有一个模态对话框,用户可以在00:00到24:00之间输入时间范围.范围滑块用于选择此范围.
一切都按预期工作,除非用户设置正确的范围句柄以使其值为24:00,默认模型绑定器无法解析此问题TimeSpan.
public class Timing
{
public TimeSpan Starts { get; set; }
public TimeSpan Ends { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我被发送回服务器的对象有一个IList<Timing>属性.
所以.问题只是字符串值"24:00"无法解析为TimeSpan实例.是否有可能说服默认模型绑定器识别这样的字符串值?
我想避免在客户端24:00更改为00:00.我知道我有Starts和Ends属性,但我的模型验证验证Ends总是大于Starts.手动更改为23:59也很麻烦.基本上可以通过24:00仍然可以在服务器上解析.
我认为范围太小了.24:00实际上00:00是第二天.所以他们应该去从00:00.00到23:59.99或什么的.
最终答案(?)24:00客户端更改为1.0:00.这将有效,因为TimeSpan.Parse("1.0:00").TotalHours返回24
编辑:请参阅此处的文档:http://msdn.microsoft.com/en-us/library/se73z7b9.aspx.它显示了天,小时,分钟,等了几个小时它的最大范围内0,以23按我下面的评论.
编辑:如果你只是让他们选择几个小时的整数,然后在服务器上解析它.
例如.TimeSpan ts = TimeSpan.FromHours(24)
返回1.00:00:00
当然,你可以随时说出来ts.TotalHours并返回24.
| 归档时间: |
|
| 查看次数: |
2434 次 |
| 最近记录: |