LinqDataSource.Where,要使用到IN该怎么写啊?
比如 SELECT * FROM TABLE1 WHERE TID IN(1,2,3,4,5)
然后使用了LinqDataSource控件,在页面load的时候给LinqDataSource.Where赋值
我写的 LinqDataSource.Where = "TID IN(1,2,3,4,5)";
这样不行,到底怎样写才对啊?
[解决办法]
List<int> list = new List<int>()
{
1,2,3,4,5
};
LinqDataSource.Table1.Where(tb=>list.Constants(tb.TID)).Select(tb=>tb)
[解决办法]
- C# code
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...." 用循环拼接的; 可用@_@ 其他暂时没找到法
[解决办法]
[解决办法]
这个好用
[解决办法]