0
我有關於MVC Razor中的部分視圖的問題。任何幫助都會得到高度讚賞,這很可能是我錯過的一些東西,但是當搜索出現同樣的問題時,我什麼也找不到。MVC Razor Html.Partial子模型
所以我將我的視圖綁定到視圖模型。
public class Person
{
public string Name { get; set; }
public virtual ContactInformation ContactInformation { get; set; }
}
然後我有一個局部視圖呈現聯繫人信息模型。
<div>
@Model.Name
</div>
<div>
@Html.Partial("_ContactInformation", Model.ContactInformation)
</div>
然而,「_ContactInformation」視圖而不ContactInformation在<input>
小號
一般剃刀的name
屬性呈現結合的名稱屬性是這樣的:名稱=「ContactInformation.Address」。但由於它是一個部分,它會呈現爲name =「Address」。
我錯過了什麼,或者這是它的工作方式?
這是按預期工作的。視圖是自包含的,他們不知道父視圖/模型。如果你想這個工作正常,你需要使用['@ Html.EditorFor(model,template)'](http://msdn.microsoft.com/en-us/library/ee407414(v = vs.118 ).aspx)而不是'@ Html.Partial()'。 – 2014-12-01 18:18:14
我認爲最好的MVC有更好的方式,但至少應該有所幫助 - http://thatextramile.be/blog/2011/01/prefixing-input-elements-of-partial-views-with-asp-net- mvc – 2014-12-01 18:19:22
@AlexeiLevenkov如果我要去看局部視圖(這是一種奇怪的方式去創建編輯器模板輸出...)我寧願使用一個接口(它創建一個很好的強類型視圖),然後創建一個新的編輯器方法,它有一個魔術字符串。 – 2014-12-01 18:23:17