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# 表名中的实体框架实体信息(用于审核)_C#_Entity Framework - Fatal编程技术网

C# 表名中的实体框架实体信息(用于审核)

C# 表名中的实体框架实体信息(用于审核),c#,entity-framework,C#,Entity Framework,在Entity Framework(对于.NET Core)中,可以从对象类型获取实体和属性信息,例如DB.Model.FindEntityType(curObj.GetType()).GetProperties(),然后调用property.SqlServer()可以提供映射的属性信息 是否可以以表名而不是实体类型开始?例如,假设我知道该表名为EMPLOYEE,是否有方法要求Entity Framework为我提供映射到此表名的实体 我为什么要这样做 我知道这不是使用Entity Framew

在Entity Framework(对于.NET Core)中,可以从对象类型获取实体和属性信息,例如
DB.Model.FindEntityType(curObj.GetType()).GetProperties()
,然后调用
property.SqlServer()
可以提供映射的属性信息

是否可以以表名而不是实体类型开始?例如,假设我知道该表名为
EMPLOYEE
,是否有方法要求Entity Framework为我提供映射到此表名的实体

我为什么要这样做


我知道这不是使用Entity Framework的标准方法,但我们现在有一个数据库审计系统,我们希望向用户展示,因此我们需要手动将数据库数据映射到代码。

我认为没有直接实现这一点的方法

我所做的是扫描实体所在的程序集和命名空间,并通过手动循环每个实体来填充我自己的结构

        // null checks removed for demonstration
        var asm = Assembly.Load(myEntityAssembly);
        var classes = asm.GetTypes().Where(p => p.Namespace?.StartsWith(myEntityNamespace) == true).ToList();

        foreach (var type in classes)
        {
            var entityType = DB.Model.FindEntityType(type);
            var tableName = entityType.SqlServer().TableName.ToUpper();
            // ...
        }

我希望我有一本使用EntityFramework创建的所有元数据的手册。