由于LINQ to Entities没有DeleteAllOnSubmit()
方法。所以我自己创建它并以DeleteAllObjects
命名为以下代码。
public static void DeleleAllObjects<TEntity>(this ObjectSet<TEntity> objectSet, TEntity[] objects)
{
foreach(var o in objects)
{
objectSet.DeleteObject(o);
}
}
但是我编写的代码在编译时失败并收到错误消息:
“TEntity”类型必须是引用类型才能将其用作 泛型类型或方法中的参数'TEntity'
我认为一直使用带有DeleteObject的foreach对于删除集合不是一个好主意。
答案 0 :(得分:3)
试试这个。该方法必须是通用的,TEntity
只是该类型的占位符。
public static void DeleteAllObjects<TEntity>( this ObjectSet<TEntity> objectSet,
IEnumerable<TEntity> objects)
where TEntity : class
{
foreach(var o in objects)
{
objectSet.DeleteObject(o);
}
}