如何初始化DataSpace.Space和DataSpace.CSpace

本文关键字:DataSpace CSpace Space 初始化 | 更新日期: 2023-09-27 18:21:50

我正在创建一个通用EF模型浏览器,通过选择其DLL加载模型,然后使用反射实例化ObjectContext。

这一部分正在工作——问题是需要DataSpace.Space和DataSpace.CSpace的操作失败了,我正试图找出如何以通用的方式初始化它们,这样我所有使用它们的运行时EF实用工具元数据查询函数都能工作。

是否有一种方法可以在只有DLL可用的情况下初始化此元数据信息(EDMX不可用)。

提前感谢任何线索。

如何初始化DataSpace.Space和DataSpace.CSpace

多亏了Julie Lerman、Craig Stuntz和Hadi Hariri,我能够使用http://social.msdn.microsoft.com/Forums/en-US/dd7b1c41-e428-4e29-ab83-448d3f529ba4/creating-an-entity-connection-from-a-sql-connection.它可能不是最佳的,但这是有效的:

var workspace = new MetadataWorkspace(new string[] { "res://*/" }, 
    new Assembly[] { AssemblyContainingYourModel });

我也尝试过使用MetadataWorkspace.LoadAssembly(),但结果是:

The space 'OSpace' has no associated collection.