Asp.带有nullable_的.MVC分部视图模型
本文关键字:视图 模型 MVC 带有 nullable Asp | 更新日期: 2023-09-27 18:05:22
我正在尝试开发一个简单的局部视图:
@model Nullable<DateTime>
@if (Model == null)
{
<span>Active</span>
}
else
{
<span>Resigned on @Model.GetValueOrDefault().ToShortDateString()</span>
}
并在另一个视图中使用:
@Html.Partial("ViewTemplates/UserStatus",user.ResignDate)
视图工作完美,除非它是一个Nullable<T>
。
我收到错误:
传入字典的模型项类型为'System.Collections.Generic.List
1[Models.UserModel]', but this dictionary requires a model item of type 'System.Nullable
1[System.DateTime]'.
当然,用户。ResignDate是一个可空的日期时间。
任何想法?
谢谢
如果传递给分部方法(user.ResignDate)的模型参数为null,则asp.net-mvc将调用者视图的模型传递给分部视图,您会得到错误。
如果您遵循惯例并将UserStatus放在DisplayTemplates文件夹中,我会建议您用DisplayFor方法替换Partial call
@Html.DisplayFor(model => model.user.ResignDate, "UserStatus")
请检查用户的数据类型。ResignDateDateTime