哪个汇编包含LINQ扩展方法删除?

时间:2013-12-22 22:13:37

标签: linq crm linqpad

我正在尝试使用LINQPAD中的以下代码从CRM中名为xyz的实体中删除一行

    var d = from z in xyz
where z.exch_ZipCode == "60069" 
&& z.exch_zipcodeId.Value== new Guid("c6e88a07-b4a2-e211-b8d2-bc305befb465")
select new
{
zipId = z.exch_zipcodeId.Value,
zip = z.exch_ZipCode,
};
d.AsEnumerable().ToList().ForEach(row=>row.Delete());

我添加了System.Data.DataSetExtensions.dll,但是我收到以下错误

'AnonymousType#1'不包含'Delete'的定义,并且没有扩展方法'Delete'可以找到接受类型'AnonymousType#1'的第一个参数(按F4添加using指令或程序集引用)

1 个答案:

答案 0 :(得分:1)

如果这是LinqToSql,那么要删除行,请使用DeleteOnSubmitDeleteAllOnSubmit

例如,如果要删除符合条件的xyz中的所有行,您可以执行以下操作:

var query = (from z in xyz
    where z.exch_ZipCode == "60069" 
       && z.exch_zipcodeId.Value== new Guid("c6e88a07-b4a2-e211-b8d2-bc305befb465")
    select z);

xyz.DeleteAllOnSumit(query);
SubmitChanges();