微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

DateTime数据注释在ASP.NET Core RC2应用程序中不起作用

如果我将数据注释添加到我的viewmodel,则DateTime字段的值始终为{1/1/0001 12:00:00 AM}.

视图模型

public class EditReleaseviewmodel : Baseviewmodel
{
        [display(Name = "ReleaseDate",ResourceType = typeof(SharedResource))]
        [displayFormat(ApplyFormatInEditMode = true,DataFormatString = "{0:dd.MM.yyyy HH:mm}")]
        [required(ErrorMessageResourceName = "Fieldrequired",ErrorMessageResourceType = typeof(SharedResource))]
        public DateTime ReleaseDate { get; set; }
}

控制器非常简单,如果我删除数据注释并使用认一切正常.

调节器

[HttpPost]
        [ValidateAntiForgeryToken]
        public async Task<IActionResult> Edit(EditReleaseviewmodel viewmodel)
        {
            if (ModelState.IsValid)
            {
                ...
            }
        }

视图

<div class="form-group col-sm-12 col-md-6 col-lg-4">
            <label asp-for="ReleaseDate" class="col-md-3 control-label"></label>
            <div class="col-md-9">
                <input asp-for="ReleaseDate" class="form-control" />
                <span asp-validation-for="ReleaseDate" class="text-danger" />
            </div>
        </div>

它是一个ASP.NET核心MVC RC2应用程序 – 也许我在那里缺少一些东西.

解决方法

将DateTime更改为DateTime?在你的模型中.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐