日期:2014-05-20 浏览次数:21093 次
SELECT * FROM TABLE1 WHERE TID IN(1,2,3,4,5) =========== var query=from t in Table1 where new int[]{1,2,3,4,5}.Contains(t.TID) select t;
------解决方案--------------------
http://msdn.microsoft.com/zh-cn/library/system.web.ui.webcontrols.linqdatasource.where.aspx
http://social.msdn.microsoft.com/forums/en-US/linqprojectgeneral/thread/051814c6-9db1-410e-8af7-783083e1bdf9/
------解决方案--------------------
List<int> productIds= new List<int>( );
var products = (from p in context.Products
where productIds.Contains(p.ProductId)
select p).ToList().OrderBy(a=>a.ProductId).ToList()
------解决方案--------------------
服务器控件 好久没用了。
linq中的 in 的话,可以用 Contains \Any等
List<int> list = new List<int>()
{
1,2,3,4,5
};
LinqDataSource.Table1 .Where(w=> list.Contains(w.TID));
LinqDataSource.Table1 .Where(w=> list.Any(a=>a==w.TID));
------解决方案--------------------
上面都答非所问啊 他问的是那个页面数据源控件
我是这么解决的 IN(1,2,3,4,5)
换成 LinqDataSource.Where = "TID==1 or TID==2 or...." 用循环拼接的; 可用@_@ 其他暂时没找到法
------解决方案--------------------