Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/333.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# 是否可以在实体框架中返回实体的所有列数据_C#_Entity Framework - Fatal编程技术网

C# 是否可以在实体框架中返回实体的所有列数据

C# 是否可以在实体框架中返回实体的所有列数据,c#,entity-framework,C#,Entity Framework,实体类是否可能 class mytest { public int id {get;set;} } 使用实体框架来查询该实体并获取其所有列,而不让它们出现在C#类中 给定一个表,我想根据已知的某些列进行筛选,然后返回所有其他列,在上述情况下,我知道该表是一个id列。您必须在entity类中定义的.Net代码中包含所有要具体化的属性,但您在该类上设置了一个接口来定义要查询的“已知”字段,例如ID: public interface IEntity { int Id { get;

实体类是否可能

class mytest
{
    public int id {get;set;}
}
使用实体框架来查询该实体并获取其所有列,而不让它们出现在C#类中


给定一个表,我想根据已知的某些列进行筛选,然后返回所有其他列,在上述情况下,我知道该表是一个id列。

您必须在entity类中定义的.Net代码中包含所有要具体化的属性,但您在该类上设置了一个接口来定义要查询的“已知”字段,例如ID:

public interface IEntity
{
    int Id { get; set; }
}
然后,您可以使用EF查询这些已定义的字段,也可以使用EF上下文中的通用方法查询每个实体必须具有的某些字段,例如Id:

context.Set<TEntity>().Find(id);
context.Set().Find(id);

context.Set().Where(谓词);

以上假设
tenty:class,ienty

否-如果在类中加载一个实体时只有
id
,则无法获取所有其他列。如果希望从数据库中获取所有列,则与这些列对应的所有字段都必须出现在C#classNo中,则不能,如果您希望这样做,则EF为n这确实是一个合适的工具。你可以使用ADO.net和DataTables来实现。即使你得到了生成的SQL来返回所有列,你会如何在代码中引用它们?有很多方法可以将这些信息转换成代码,只需将数据作为键、值的字典返回。你可以在询问db f的基础上通过反射生成类我看到了很多可能的解决方案,只是想知道是否有其他人做过类似的事情或者有解决方案。
context.Set<TEntity>().Where(predicate);