2012-07-10 77 views
1

我只是想问是否可以创建一个接受泛型类型参数的局部视图?通用局部视图

基本上,我创建了一个可用于添加不同类型的对象(即产品,员工)的添加表单。目前,我可以通过PartialView创建它,该PartialView接受我的ProductsModel来呈现“添加产品”表单。但是,我想为我的添加员工使用此相同的表单。

我想到的是附加类型呈现通过查询字符串,并检查代码其中的一个呈现。我试了一下,但似乎没有成功。

有人能指点我一个解决方案吗?非常感谢!干杯!

+0

我是否正确的假设如果你想重复使用同一个表单的许多不同的对象的对象共享共同的属性,它是这些,只有这些属性,你将在共享部分使用? – BonyT 2012-07-10 09:08:31

+0

是的,我想重复使用不同对象的相同表单。但是,不,这些对象不共享相同的属性。例如,产品将具有ProductID,ProductName和Price,而Employee将具有EmployeeID,Name和Birthdate。是的,这些是我将在共享部分上使用的唯一属性。感谢您的答复! – Smiley 2012-07-10 09:15:23

+0

所以,当你谈论检查查询字符串 - 你想在视图中做这件事来弄清楚哪些属性绑定? 如果是这种情况,您需要重新思考 - 在如此多的层面上这是错误的! – BonyT 2012-07-10 09:53:07

回答

1

这只是一个替代方法的建议,它可以为您提供所需的功能。

声明一个ViewModel对象,例如:带有“n”属性的“WidgetModel” - 将它们称为Property1,Property2等

将要绑定到视图的对象映射到此通用对象 - 您可以使用Automapper轻松实现此目的。

现在在视图中您将绑定到WidgetModel对象的属性,并且类型没有问题。

虽然我个人认为我坚持单独的部分!

希望这给你一些想法。

+0

谢谢你,但你的最后一行是对的。我现在也坚持偏见。我刚刚意识到,至少坚持单独的部分会使我的应用程序非常易于维护。非常感谢你! :) – Smiley 2012-07-12 00:18:43