APS.netMVC的ViewModel问题
问题是这样的:
数据库有两个表
表 product
ID
Name
ClassID
Other
表 Class
ClassID
ClassName
定义了ViewModle IEnumerable<product>,在视图用foreach迭代.
例如:
foreach(var p in Model)
{
p.Name
p.ClassID
}
问题就在这里p.ClassID,我现在是用Html.RenderAction调用控制器的方法,实现分类名称的显示.
感觉类似这样关联的记录都要写action调用,挺麻烦,
请问有没有更好的解决方法?
又或者说如何把这些(类似:分类名称)都定义在ViewModel直接输出到视图呢?让视图更简洁
感谢大家的指教了.
------解决方案--------------------------------------------------------
定义一个接口,接口中含有共同的关联属性。。然后写一个ascx ViewModel使用该接口
------解决方案--------------------------------------------------------
1 product下定义Class类 变量Class
2 搜索product的时候搜索出class并匹配
3 view里product.Class.name/(Dish.Shop.Name)这样来调用
你用ef4的话,只要直接调用就行
------解决方案--------------------------------------------------------
这不是简单的联合表查询的问题么?你完全可以根据查出来的数据来设计一个你想要的Model(包含ClassName)
其实JS+AJAX局部绑定也可以
------解决方案--------------------------------------------------------
http://topic.csdn.net/u/20111103/12/c2b486c9-f0a2-4569-bc56-43aabb6973d9.html
合理设计你的ViewModel 就可以实现的