日期:2014-05-20  浏览次数:20809 次

关于linq查询的问题
现在有数据表结构如下
tags
tid int
tname varchar(20)

falsh
fid int 
fname varchar(20)
tid int

表falsh中的tid为表falsh的外键
我想用linq实现如下效果

查询tags表中的前6条数据
查询每个tags对象中falsh对象的前5条数据
最后返回一个list<tags>对象,每个返回的tags.falsh中只有前5条数据
请问用linq应该怎么实现呢

------解决方案--------------------
帮顶 呵呵 没弄这个!
------解决方案--------------------
var tmpResult = DataContext.tags.take(6);//取前6条
如果要做到每个tags只包含5条falsh ,很困难。。。。
因为如果能包含,说明他们是关联的,关联的话,怎么在linq语句里破坏这个关联呢?
只能取出来,在进行二次操作。
IQueryable<tags> tmpTags = DataContext.tags.take(6);
然后用移除或添加等方法,达到你的最终要求:
tmpTags.remove(falsh );
tmpTags.add(falsh );


------解决方案--------------------
数据表跟linq怎么个关系?

写出Linq实际操作的对象(或者叫做实体),否则不会乱写Linq的。
------解决方案--------------------
应该可以实现,多想一下,我是来找分的,呵呵
------解决方案--------------------
不会使用LINQ,但又想达到这种效果,而且简单易用,搂主去看我的博客,下载一个数据框架试试。
------解决方案--------------------
用SQL可以写出来的,我写过
LinqtoSQL肯定也直接写得出来
不过肯定超级麻烦.
------解决方案--------------------
面向的对象 是实体啊 ,还是SQL 啊?
LINQ TO Entity 还是SQL 啊?