C# 如何使用MetadataWorkspace以编程方式读取EDMX文件?
我试图通过编程读取实体框架EDMX文件 我知道这是一个普通的XML,所以我可以自己读取XML并提取数据,但由于有一个可用的API,我正在尝试使用它 下面的代码可以工作,只是我无法获得OCSpace,它表示类型和表之间的关联。这是我最重要的部分C# 如何使用MetadataWorkspace以编程方式读取EDMX文件?,c#,.net,entity-framework,C#,.net,Entity Framework,我试图通过编程读取实体框架EDMX文件 我知道这是一个普通的XML,所以我可以自己读取XML并提取数据,但由于有一个可用的API,我正在尝试使用它 下面的代码可以工作,只是我无法获得OCSpace,它表示类型和表之间的关联。这是我最重要的部分 var csdlEntities = mdw.GetItems(DataSpace.CSpace) .Where(x => x is EntityType) .T
var csdlEntities = mdw.GetItems(DataSpace.CSpace)
.Where(x => x is EntityType)
.ToList();
var csdlAssociations = mdw.GetItems(DataSpace.CSpace)
.Where(x => x is AssociationType)
.ToList();
var ssdlEntities = mdw.GetItems(DataSpace.SSpace)
.Where(x => x is EntityType)
.ToList();
var ssdlAssociations = mdw.GetItems(DataSpace.SSpace)
.Where(x => x is AssociationType)
.ToList();
// EXCEPTION HERE
var mappings = mdw.GetItems(DataSpace.OCSpace).Where(x => x is EntityType).ToList();
这是引发异常InvalidOperationException的行,OCSpace没有关联的集合:
var mappings = mdw.GetItems(DataSpace.OCSpace).Where(x => x is EntityType).ToList();
可能有什么问题?要引用的类和工作区是否在同一命名空间中?工作区是否位于正确的位置?“看来是这样,”德拉普。无论如何,谢谢你。