首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

表连接后select new 如何取被连接的表的全字段~

2012-03-30 
表连接后select new 怎么取被连接的表的全字段~~使用linq连接2个表后,请问下怎么取全字段,因为是外连接,必

表连接后select new 怎么取被连接的表的全字段~~
使用linq连接2个表后,请问下怎么取全字段,因为是外连接,必须用select new 来判断空的情况,但是使用select new,被连接的表字段很多,一一写出来很麻烦的哈,请问各位这个要怎么写??谢谢了哈  
  代码如下所示:select new
  {
  bianhao = t1.Field<string>("bianhao"),
  all_things = t1.Field<int>("all_things"),
  done = t1.Field<int>("done"),
  cui = t1.Field<int>("cui"),
  chong = t1.Field<int>("chong"),
  danwei = t1.Field<string>("danwei"),
  manyi = t1.Field<int>("manyi"),
  bumanyi = t1.Field<int>("bumanyi"),
  yiChaoQi = t1.Field<int>("yiChaoQi"),
  yiYanQi = t1.Field<int>("yiYanQi"),
  yiGongShi = t1.Field<int>("yiGongShi"),
  yiYuJing = t1.Field<int>("yiYuJing"),
  zhuanJieNum = ok == null ? 0 : ok.Field<decimal>("zhuanJieNum")
被链接表还有好多字段,能用一句话搞定吗??

[解决办法]
select new { t1, zhuanJieNum = ok == null ? 0 : ok.Field<decimal>("zhuanJieNum") };

访问的时候:
原来
foreach (var item in query)
{
a = item.bianhao;
b = ...
c = zhuanJieNum;
...
}
现在:
foreach (var item in query)
{
a = item.t1.Field<string>("bianhao");
b = ...
c = zhuanJieNum;
...
}

[解决办法]
select new{t1,ok}

热点排行