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