我正在创建结帐系统。部分表格需要所用卡的到期日期。这由 2 个小文本框组成,1 个代表月份,1 个代表年份。在我看来,我正在使用以下代码:
@Html.LabelFor(c => c.expiryDate)
@Html.HiddenFor(c => c.expiryDate.Day)
@Html.TextBoxFor(c => c.expiryDate.Month, new { @class = "ccDate" })
<span class="ccDateSep">/</span>
@Html.TextBoxFor(c => c.expiryDate.Year, new { @class = "ccDate" })
但是,当提交表单时,日期始终显示为 01/01/0001。所有其他领域都很好。
有什么想法吗?
最佳答案
DateTime
结构是不可变的。您不能只创建一个实例并更改其Day
、Month
或Year
。您应该直接绑定(bind)expiryDate
属性,否则您将必须在模型中为月份和年份值创建新属性。然后您可以使用构造函数自己创建一个实例。
关于c# - mvc4 从表单中获取日期值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20424255/