我想做这样的事情,这样我就可以创建一个模式对话框,稍后我会用 jQuery 调用它
<div class="modal" id="modalName" style="display: none;">
<div class="modal-header">
<a class="close" data-dismiss="modal">×</a>
<h3>Edit Contacts</h3>
</div>
@using (Html.BeginForm("Index", "Home", FormMethod.Post, new Dictionary<string, object> { { "class", "form-horizontal" } }))
{
<div class="modal-body">
@Html.EditorFor(model => new ViewModel(), "ViewModelTemplateName")
</div>
<div class="modal-footer">
<a href="#" class="btn" data-dismiss="modal">Close</a>
<button type="submit" class="btn btn-primary">
Submit</button>
</div>
}
</div>
在这条线上
@Html.EditorFor(model => new ViewModel(), "ViewModelTemplateName")
我得到错误
模板只能与字段访问、属性访问、一维数组索引或单参数自定义索引器表达式一起使用。
我不明白为什么它会关心实例在哪里或是什么(只要它的类型正确)
@Html.Partial("~/Views/Shared/EditorTemplates/ViewModel.cshtml", new ViewModel()) 可以解决问题,但我必须声明模板的完整路径……这有点糟糕。
那么有没有更好的方法呢?