基本上,我不是编写普通的旧Html来构建表单,而是想调用一个帮助器方法并返回我需要的东西。
<div class="contacto-container">
<h1>Envíenos sus consultas:</h1>
@Html.Editor("BuzonDeSugerenciaModel", "BuzonDeSugerenciaModel")
<div class="separator"></div>
</div>
这并不是我认为它会做的事情。
输出:
<input id="BuzonDeSugerenciaModel"
class="text-box single-line"
type="text" value="" name="BuzonDeSugerenciaModel">
而不是我在Model类BuzonDeSugerenciaModel
中声明的输入集合。
如果这是一个强类型的视图,那么如果我去了会很好:
@Html.EditorForModel()
但是,由于这是在_Layout.cshtml文件中运行的,我还需要其他东西。我无法想出办法来做到这一点。
有什么想法吗?
答案 0 :(得分:1)
您需要创建一个强类型为BuzonDeSugerenciaModel
类的部分视图。此部分视图将显示在您的Views > Shared
目录中。
像这样(_BuzonDeSugerenciaModel.cshtml
):
@model BuzonDeSugerenciaModel
@Html.EditorForModel()
然后,在_Layout.cshtml中,您可以致电:
@Html.Partial("_BuzonDeSugerenciaModel", Model.buzonDeSugerenciaModel)
您需要将BuzonDeSugerenciaModel
的实例作为第二个参数传递给Partial()
。如果你没有通过Controller
表格,那么这样的话会起作用:
@Html.Partial("_BuzonDeSugerenciaModel", new BuzonDeSugerenciaModel())