首页 新闻 会员 周边

表达式问题,紧急

0
悬赏园豆:20 [已关闭问题]

public T GetSingle<T>(Func<T,bool> func) where T:class
  {
  return Dc.GetTable<T>().Where<T>(fun);
  }
这个方法func是动态传入的,Log和sql跟踪器查出来生成的sql语句是不带where筛选条件的

但如果类似
  public tb_GS_Comment GetSingle<tb_GS_Comment>()
  {
  return Dc.GetTable<tb_GS_Comment>().Where<tb_GS_Comment>(c=>c.id==1);
  }
生成的sql语句是带where表达式的,请问为什么.有什么办法能解决吗?public T GetSingle<T>(Func<T,bool> func) where T:class
  {
  return Dc.GetTable<T>().Where<T>(fun);
  }
这个方法func是动态传入的,Log和sql跟踪器查出来生成的sql语句是不带where筛选条件的

但如果类似
  public tb_GS_Comment GetSingle<tb_GS_Comment>()
  {
  return Dc.GetTable<tb_GS_Comment>().Where<tb_GS_Comment>(c=>c.id==1);
  }
生成的sql语句是带where表达式的,请问为什么.有什么办法能解决吗?

ALineType的主页 ALineType | 初学一级 | 园豆:180
提问于:2010-08-03 16:02
< >
分享
其他回答(1)
0

public T GetSingle<T>(Func<T,bool> func) where T:class
  {
  return Dc.GetTable<T>().FirstOrDefault(fun);//Where<T>(fun); 肯定可以
  }

Kain | 园豆:445 (菜鸟二级) | 2010-08-03 17:10
0

return Dc.GetTable<T>().Where<T>(fun); 这个可以看做是嵌套查询(在查询结果中再进行查询),而

return Dc.GetTable<tb_GS_Comment>().Where<tb_GS_Comment>(c=>c.id==1);则是简单的 条件查询。

HUHU慈悲 | 园豆:9973 (大侠五级) | 2010-08-12 10:50
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册