S'Ok,给定以下模型:-
public class SomeViewModel
{
public IAnimal Animal { get; set; }
public Exception Exception { get; set; }
}
一个IAnimal
可以是这个..
public class Cat : IAnimal { .. }
public class Dog : IAnimal { .. }
并给出以下 Razor 代码
.. snip ..
@if (Model.Animal!= null)
{
Html.DisplayForModel(Model.Animal);
}
else if (Model.Exception != null)
{
Html.DisplayForModel(Model.Exception);
}
@Html.ActionLink("Lets go back home.", "Index")
如果模型实例是其中之一,则视图不会渲染猫或狗的属性。
现在,这些模型中的每一个都只是一些字符串和布尔值等。所有原始类型。
所以我想,如果我只是传入模型,它应该被渲染。
有人对我可能做了什么有任何建议,错了吗?
另外 - 对于奖励积分,是否可以为这两个类之一创建一个显示模板 - 比如说这个Cat
类 - 并让它只显示 instelf?例如。告诉它显示自己,而不是我手动创建Html.Label
...等。