我在数据库中的表,有一些columns.I获得从该表在我的仓库的一些记录列表class.So我都会有这样的事情:如何删除实体框架中列中具有相同值的记录?
现在我想删除那些在(在代码列在这里)的特殊列的值相同的记录,像这样:
我的意思是我想刚才的那个有相同的代码列值的记录之一。 我如何在实体框架中做到这一点?
我在数据库中的表,有一些columns.I获得从该表在我的仓库的一些记录列表class.So我都会有这样的事情:如何删除实体框架中列中具有相同值的记录?
现在我想删除那些在(在代码列在这里)的特殊列的值相同的记录,像这样:
我的意思是我想刚才的那个有相同的代码列值的记录之一。 我如何在实体框架中做到这一点?
让你有两个表Table1
和table2
和要删除所有,它们是在表2相同code
号记录 从table1
。 这是您的要求
1.首先,你必须得到
var x = db.table2.Select(p => p.code);
那么你有后,与表1 到comapre它的表2的代码列的所有值,你必须删除记录这些代码是相同的。因为你必须写下面的一段代码。
foreach(var in x) var y = db.table1.Where(p => p.code == item).FirstOrDefault(); if(y!= null) { db.table1.DeleteObject(y); db.SaveChanges(); } 其他 {} }
集团由Code
列,跳过每个组的第一个记录,并删除其余:
var query = db.Records.GroupBy(r => r.Code)
.Select(grouping => grouping.OrderBy(ent => ent.EntityId).Skip(1));
foreach (var element in query.SelectMany (q => q))
{
db.Records.Remove(element);
}
db.SaveChanges();
和行应保持?没关系?第一?马克斯(名字)? – 2013-03-05 06:03:46
不需要。我只是想删除一个特殊列(这里是代码列)中具有相同值的记录。 – 2013-03-05 07:03:55
@HamidReza有多少行? 10个,100个,1000个或更多? – qujck 2013-03-05 08:57:08