在运行时访问实体框架存储模型

时间:2016-03-22 22:49:15

标签: c# entity-framework ef-code-first

所以我在这里有另外一个问题:Entity Framework - Determine the HasDatabaseGeneratedOption setting for a given type

我想回答这个问题我只需要访问给定OnModelCreating的存储模型(使用DbContext创建的存储模型)。

有什么想法吗?

1 个答案:

答案 0 :(得分:4)

来自给定的dbcontext的

...你可以这样做

var mw = ((IObjectContextAdapter)context).ObjectContext.MetadataWorkspace; 

请参阅此https://msdn.microsoft.com/en-us/library/system.data.metadata.edm.metadataworkspace_methods(v=vs.110).aspx

要访问存储模型,您可以执行以下操作:

var sSpaceEntities = (StoreItemCollection)mw.GetItemCollection(DataSpace.SSpace);

为DataSpace avaiables https://msdn.microsoft.com/en-us/library/system.data.metadata.edm.dataspace(v=vs.110).aspx

设置此项

你可以在重新布局时玩弄这些物品,你可以找到很多信息。