1

我想在 MVC3 框架中创建一个视图,该视图将根据数据动态运行。我正在采取一种方法来为模型创建一个接口,并且视图正在根据实现该接口的类来显示模型。例如,假设我有一个接口 IData,它只有一个属性 Data。现在我正在创建两个模型 Dog 和 Cow,它们是从 IData 派生的。我正在使用 Dog 和 Cow 类的 UIHint 属性来使用一些显示模板来呈现这些类中的数据。我正在采用这种方法来使用相同的视图类来渲染两个模型。View 的模型数据是 IData,而不是牛或狗。但是我注意到,当我使用 @Html.DisplayFor(m=>Model.Data) 时,它没有使用适当的模板来呈现数据。后来我意识到,lambda 表达式将模型类型作为 IData 传递,不是狗或牛,因此,MVC 框架无法找到合适的模板。有没有其他方法可以实现相同的目标?谢谢,

4

0 回答 0