实体框架6独立项目编辑器模板不起作用



我在解决方案中设置了两个项目:

  1. MVC5 Web应用程序
  2. 类库(实体框架6代码优先方法)

我现在正试图为我正在处理的表单设置编辑器模板,但它们不起作用。形式本身存在于局部视图中。到目前为止,我已经尝试了以下几种:

我在MVC5 Web应用程序(Views/EditorTemplates/DateTime.cs.html)中创建了一个DateTime编辑器模板

@model DateTime?
@Html.TextBox("", String.Format("{0:yyyy-MM-dd}", Model.HasValue ?
    Model : DateTime.Today), new { @class = "dp", style = "width:100px" })

我已经在我的模型中放置了属性的UI提示:

[UIHint("DateTime")]
public DateTime StartDate { get; set; }

这不起作用,所以我尝试将以下代码添加到我的部分视图:

@Html.EditorFor(model => model.StartDate, "DateTime")

在这一点上,我相信我遇到了问题,因为我的EF模型在一个单独的项目中。如果是这样的话,那么在这个场景中如何实现编辑器模板呢

为了在整个项目中使用EditorTemplate,您应该将模板存储在Views/Shared/EditorTemplates文件夹中(您需要创建一个,因为它不是默认的项目文件夹)。这将允许视图引擎查找您的自定义编辑器模板。

可能不起作用,因为您在模型和编辑器中都有DateTime?可以为null?

最新更新