我有一个Views文件夹,其webBaseType在web.config中指定。在我的Areas / MyProject / Views文件夹中,我有一个指定pageBaseType Class2的web.config。 MyProject与class1不兼容。
除了MyProject之外,系统中的其他地方都需要一个Views / Shared / EditorTemplates / String.cshtml文件。因为String.cshtml使用Class1,而MyProject不能导致错误。
有没有一种好方法可以阻止MyProject中EditorTemplates文件夹的继承?我可以将EditorTemplates的全部内容粘贴到MyProject / Views / Shared中,然后停止它,但我不想记得每次向EditorTemplates添加新的cshtml时都要复制文件。
答案 0 :(得分:1)
您的字符串编辑器模板的作用是什么?
如果需要为模型属性呈现特定模板,可以使用[UIHint]属性或[DataType]属性。如果您不打算在全球范围内使用它,那么最好这样做。请注意,您需要将模板名称更改为唯一的名称,例如MyStringTemplate.cshtml。
根据您的评论,您希望编辑器模板是全局的,但不在您的区域中使用它们,我的建议是不要在您的视图中使用@Html.EditorFor(...)
,而是创建表格字段明确地例如@Html.TextboxFor(...)
。