1
有没有办法从EF获取我所有的实体类名称列表?我可以使用实体框架4.1:我的所有类名称列表
ObjectContext.GetKnownProxyTypes()
但是此方法只返回在当前上下文中使用的类型。我需要所有在我的DBContext中的类型。
DBContext。
感谢
有没有办法从EF获取我所有的实体类名称列表?我可以使用实体框架4.1:我的所有类名称列表
ObjectContext.GetKnownProxyTypes()
但是此方法只返回在当前上下文中使用的类型。我需要所有在我的DBContext中的类型。
DBContext。
感谢
你能不能使用反射来获取从实体的DbContext类型的列表?
你可以试试这个:
ObjectContext context = ((IObjectContextAdapter)dbContext).ObjectContext;
EntityContainer container = context.MetadataWorkspace
.GetEntityContainer(context.DefaultContainerName, DataSpace.CSpace);
string[] typeNames = container.BaseEntitySets
.OfType<EntitySet>()
.Select(es => es.ElementType.Name);
我不知道,如果适配器将正确配置DefaultContainerName
。它应该与你派生的上下文类名相同。