ASP.NET MVC:根据对象类型返回不同的视图

时间:2011-01-03 21:01:53

标签: asp.net-mvc polymorphism

在我的控制器中,我通常反序列化Xml。被反序列化的对象可能最终成为任意数量的不同类型。当然,这在编译时是不可知的。我已经创建了许多部分视图,每个视图都强类型化为不同的对象,这可能是Xml deserializaton的结果。

我的问题是我正在努力寻找返回正确视图的好方法。我总是可以在对象中打开一些属性,或者使用Key / ViewName Dictionary映射来获得正确的视图名称,但是我希望有一些比它更通用的东西。

有没有人知道我可以隐含地说的一种方式,“返回从我拥有的对象中输入的视图。”

感谢。

1 个答案:

答案 0 :(得分:0)

如果没有看到您的代码,很难判断您所做的事情是否适合任何最佳实践,但是从外部来看,您的方法似乎有点令人困惑和限制。

也就是说,您可以使用类型名称命名您的视图。

类似于return View(xmlObject.GetType().Name + "View");