可以說我有兩個類從另一個派生:MVC模型綁定和鑄造
動物和狗
public class Animal
{
public String Name { get; set; }
}
public class Dog : Animal
{
public Boolean HasSpots { get; set; }
}
在我控制我傳遞一個動物到索引視圖
public ActionResult Index()
{
return View(new Dog() {Name = "Dog"});
}
索引 - 我將傳入的動畫投射到需要狗的編輯器模板中。
@model MvcApplication1.Models.Animal
@using (Html.BeginForm("About", "Home", FormMethod.Post, null))
{
@Html.EditorFor(x => x, "Dog", "Animal")
<input type="submit" value="Begin" />
}
能正常工作像它應該但當我嘗試顯式轉換回犬在我的控制器,當我把它張貼到關於它不會投。我想象一下,我將不得不創建一個自定義模型綁定器,但我不知道如何做到這一點。或者如果我完全錯過了某些東西。沒有包括接口的任何方法。
(以此爲一個小的測試例子我實際的類稍微複雜一點)
爲什麼不把視圖的模型類型設置爲'Dog'? – GolfWolf
因爲這只是一個顯示問題的例子。我會這樣做,但如果我可以 –