我是linq to entity的新手,我在使用contains方法时遇到了问题。 这是我的数据库中的示例表。
DataTable UserTable = new DataTable();
UserTable .Columns.Add("ID", typeof(int));
UserTable .Columns.Add("Name", typeof(string));
UserTable .Rows.Add(1,"Tom");
UserTable .Rows.Add(2,"Tom_dad");
UserTable .Rows.Add(3,"Tom_mom");
UserTable .Rows.Add(4,"Tom_sister");
在Linq to entities中,我写了声明
entities edm = new entities();
var query= from a in edm .UserTable
where a.Name.Contains("Tom")
select a;
结果只是名称恰好是Tom的第一行。
如何获得包含4行的结果?如SQL LIKE方法%Tom%。
感谢您的帮助和善意。
环境:VS2010 / .Net FrameWork4
//更新//
非常感谢Ben Millane。 它在我在语句后添加ToList()后工作。
var query= (from a in edm .UserTable
where a.Name.Contains("Tom")
select a).ToList();
这两个陈述有什么区别?我想为什么这种改进可以起作用。
答案 0 :(得分:3)
尝试
entities edm = new entities();
var query= (from a in edm .UserTable
where a.Name.Contains("Tom")
select a).ToList();
这有用吗?