62,052
社区成员
发帖
与我相关
我的任务
分享
var l=db.user.select(n=>new{ .. . .. .. });//简单写了一下
var ucl=db.user_class;
var cl=db.user_config;
//其中会有一些操作
foreach(var i in l){
//操作方法1
i.classname=string.Join(",", (from n in ucl from a in cl where n.userid == i.userid && n.classid== a.classid select a.classname).ToArray());
//操作方法2
ucl=ucl.where(n=>n.userid==i.userid);
i.classname=GetClassName(ucl,cl);
}
public static string GetClassName(IQueryable<Model.user_class> l1, IQueryable<Model.user_config> l2)
{
return string.Join(",", (from n in l1 from a in l2 where n.classid== a.classid select a.classname).ToArray());
}
i.classname=GetClassName(ucl,cl,userid);
public static string GetClassName(IQueryable<Model.user_class> l1, IQueryable<Model.user_config> l2,int userid)
{
return string.Join(",", (from n in l1 from a in l2 where n.userid==userid&& n.classid== a.classid select a.classname).ToArray());
}
但是未修改之前我过滤了一下在传递进去和修改后的未过滤
这两种有什么区别??[/quote]
其实我也没看出太大区别
你使用
from n in l1
join a in l2 on n.classid equals a.classid
select a.classname
再试试看呢
i.classname=GetClassName(ucl,cl,userid);
public static string GetClassName(IQueryable<Model.user_class> l1, IQueryable<Model.user_config> l2,int userid)
{
return string.Join(",", (from n in l1 from a in l2 where n.userid==userid&& n.classid== a.classid select a.classname).ToArray());
}
但是未修改之前我过滤了一下在传递进去和修改后的未过滤
这两种有什么区别??