Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Entityframework访问实体的一般方法_C#_Entity Framework_Generics - Fatal编程技术网

C# Entityframework访问实体的一般方法

C# Entityframework访问实体的一般方法,c#,entity-framework,generics,C#,Entity Framework,Generics,有没有一种方法可以让它变得通用 Context.SalesEntity.Where(t=>t.id==3).Delete(); 差不多 private void DoWork<T>(Expression<Func<T, bool>> predicate) { Context.T.Where(predicate).Delete(); } private void DoWork(表达式谓词) { Context.T.Where(谓词).Delete(

有没有一种方法可以让它变得通用

Context.SalesEntity.Where(t=>t.id==3).Delete();
差不多

private void DoWork<T>(Expression<Func<T, bool>> predicate)
{
  Context.T.Where(predicate).Delete();
}
private void DoWork(表达式谓词)
{
Context.T.Where(谓词).Delete();
}

我已经试过了,谓词位似乎工作正常。但是我不知道如何一般地执行context.entity位。

您可以使用
context.Set
方法。这将返回指定类型的
DbSet

private void DoWork(表达式谓词)
private void DoWork<T>(Expression<Func<T, bool>> predicate)
{
  Context.Set<T>().Where(predicate).Delete();
}
{ Context.Set().Where(谓词).Delete(); }
列出删除ID。。。int rowsEffected=Context.Set()。其中(t=>deleteId.Contains(???)).Delete();