1
我发现了基于对象名称(即DateTime,MyCustomObject)的编辑器和详细信息模板的信息,用于MVC系统。我只是想知道创建模板的时候是否有可能以类似的方式创建项目,其中用于创建项目的表单将与编辑屏幕不同。创建模板和编辑模板需要不同的MVC模板?
我发现了基于对象名称(即DateTime,MyCustomObject)的编辑器和详细信息模板的信息,用于MVC系统。我只是想知道创建模板的时候是否有可能以类似的方式创建项目,其中用于创建项目的表单将与编辑屏幕不同。创建模板和编辑模板需要不同的MVC模板?
是的,你可以告诉MVC以几种不同的方式区分模板。
您可以告诉视图使用哪个模板。
<%= Html.EditorFor(model => model.MyCustomObject, "MyCustomObjectCreate") %>
VS
<%= Html.EditorFor(model => model.MyCustomObject, "MyCustomObjectEdit") %>
或者,如果你正在使用的视图模型,你可以使用数据注释来告诉它在正确的模型使用的模板。
所以你的编辑视图模型是这样的:
public class MyCustomObjectEditViewModel
{
[UIHint("MyCustomObjectEdit")]
MyCustomObject CustomObject { get; set; }
}
和你创建视图模型是这样的:
public class MyCustomObjectCreateViewModel
{
[UIHint("MyCustomObjectCreate")]
MyCustomObject CustomObject { get; set; }
}