首页 新闻 会员 周边 捐助

mvc3 多表查询

0
悬赏园豆:60 [待解决问题]

刚刚接触mvc,遇到了一个问题,是关于mvc多表查询的(比如:用户-用户角色-角色, 我用的OR是linq  to sql)

问题补充: 我想用mvc做一个小的权限管理系统,用户-用户角色-角色 这三张表,中间表只有两个字段(user_id,role_id),我就想在页面上显示,一个user的基本信息及他的role_name. 我也尝试用linq join 多张表 也能够查出来结果,但是在view层我没办法处理这个结果
灰狼rang的主页 灰狼rang | 初学一级 | 园豆:140
提问于:2011-04-01 23:57
< >
分享
所有回答(9)
0

问题是?

六芒星 | 园豆:627 (小虾三级) | 2011-04-02 09:59
lz明显不会用linq to sql,需要去学习学习lazy loading了,当你返回一个category的时候,里面会有product的集合。
支持(0) 反对(0) Vincent Yang | 园豆:573 (小虾三级) | 2011-05-14 10:58
0

LINQ to SQL也是可以进行连接(join)操作的,如

var innerJoinQuery =
from category
in categories
join prod
in products on category.ID equals prod.CategoryID
select
new { ProductName = prod.Name, Category = category.Name }; //produces flat sequence

麒麟.NET | 园豆:3614 (老鸟四级) | 2011-04-02 10:19
关键是我要怎么把 查询出来的结果 传到view呢 ,没有一个实体类与 innerJoinQuery对应,难道我还还要新建一个实体类,因为实体类我是通过linq to sql 自动生成的,我不知道在怎么添加
支持(0) 反对(0) 灰狼rang | 园豆:140 (初学一级) | 2011-04-02 14:43
是的,你需要新建一个实体类,往往这种类叫做ViewModel,是专门用于在View中显示的Model。比如这段代码,你可以在一个专门的ViewModels命名空间中创建ProductViewModel类,包含ProductName和Category属性。
支持(0) 反对(0) 麒麟.NET | 园豆:3614 (老鸟四级) | 2011-04-06 09:15
0

linq to sql 应该返回的是个集合, 在页面引用这个集合类型,<%Model.xxxx%> 这样的方式取数据

ranyjax | 园豆:20 (初学一级) | 2011-04-02 19:20
你所说的xxx是一个实体类,但返回的不一定是实体类,包含多张表的信息
支持(0) 反对(0) 灰狼rang | 园豆:140 (初学一级) | 2011-04-03 21:15
0

你可以返回一个集合,然后你给每个表的字段有值得赋上值,在页面上就可以用了,字段要跟页面上的一致就行。

wlz0815 | 园豆:587 (小虾三级) | 2011-04-08 11:20
0

定义一个实体类吧

程序新青年 | 园豆:841 (小虾三级) | 2011-04-08 13:23
1

搞什么飞机啊?

ViewData=new{你要的数据结构};

[秦时明月] | 园豆:738 (小虾三级) | 2011-05-25 15:53
0

把数据存在Model中或ViewData或ViewBag中就可以传到View中了啊,只是ViewData或ViewBag最好只存少量数据

artwl | 园豆:16736 (专家六级) | 2011-11-22 18:42
0

linq的确很强大

Alvin | 园豆:828 (小虾三级) | 2012-06-24 12:50
0

刚也遇到了这个问题 控制器里面 返回的是一个集合 在视图里是这样写的 @model List<wenbing.Models.diseaseDBCX>

但是 出现问题了

问题如下:

传入字典的模型项的类型为“System.Collections.Generic.List`1[<>f__AnonymousType3`4[System.Int32,System.String,System.Decimal,System.String]]”,但此字典需要类型“System.Collections.Generic.List`1[wenbing.Models.diseaseDBCX]”的模型项。

 

求大神指点这个咋么在视图写才是正确的呢? 谢谢!!

坚持の承诺 | 园豆:204 (菜鸟二级) | 2014-10-23 18:51
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册