c# - 日期时间并不总是得到设置

标签 c# asp.net-mvc datetime

我有一个 C# ASP.NET MVC 项目。该项目有一个以 yy/mm/dd hh:mm 格式提交日期时间的表单。 Controller 有一个模型绑定(bind)来接收表单值。

datetime 属性声明如下:

public DateTime? aDate { get; set; }

public DateTime? bDate { get; set; } 

使用 Chrome 开发工具,我已确认 DateTime 值始终会被发送。 但是,有时会设置 aDate/bDate 属性,有时不会。

我无法在发送的日期中观察到导致此问题的任何一致行为或模式。有时其中一个设置好而另一个不设置。

如果相应的表单元素具有值,模型中的所有其他属性总是会被设置。

这可能是什么原因造成的?

最佳答案

我不认为您必须在模型级别将 DateTime 标记为 null。只需将其作为 DateTime。当日期不会在表单级别提供时,它会自动转换为等同于您可以在后端完美处理的内容。

关于c# - 日期时间并不总是得到设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55281187/

相关文章:

C# 无法将类型 'string' 隐式转换为 'System.IO.StreamReader

c# - "public class MvcApplication : System.Web.HttpApplication"行处出现编译错误 MVC4

javascript - 以时间格式制作 highcharts 的 y 轴 hh :mm

javascript - 在 ASP.NET MVC 嵌套 View 中应将 javascript 放在哪里?

c# - MVC - 混合身份验证 - OWIN + Windows 身份验证

php - 将字符串日期转换为 MySQL 日期时间

C# 日期时间 - RFC 3339 格式

c# - OrderBy().Last() 或 OrderByDescending().First() 性能

c# - 使用 MahApps 保持样式扩展 WPF 中的 TextBox

c# - 返回页面上的同一部分