【问题标题】:Is there an API to read an EDMX file是否有读取 EDMX 文件的 API
【发布时间】:2011-12-28 00:47:41
【问题描述】:

如果我有一个 .edmx 文件,有没有办法以编程方式访问它?我可以使用 XDocument,但也许已经有一个 api 了?

【问题讨论】:

    标签: entity-framework


    【解决方案1】:

    EDMX 文件仅供设计师使用。它甚至没有按原样与您的应用程序一起分发。 EDMX 包含四个组件——SSDL、MSL、CSDL 和设计者信息。前三个组件是在构建应用程序期间提取的,并作为资源 XML 文件存储在程序集中或作为外部 XML 文件提供。这些文件可以像任何其他 XML 文件一样读取。唯一可以加载它们的 API(存在于 .NET 中)是 EF 中的 EntityConnection / MetadataWorkspace

    【讨论】:

    • 我找到了答案:EntityClassGenerator
    • 顺便说一句。这对你有什么帮助?它与您最初要求的完全不同。它不提供对文件内容的访问——它只生成类。因此,如果您想访问 EDMX 的映射部分或存储部分,这对您毫无帮助。
    • @LadislavMrnka:根据this 的回答,有没有办法将EDMX 内容读入您提到的对象模型之一(EntityConnectionMetadataWorkspace)?
    • @RaheelKhan: EntityConnection 将所有这些模型作为连接字符串的强制部分:msdn.microsoft.com/library/bb738533%28v=vs.100%29.aspx
    【解决方案2】:

    Library for Object access to edmx

    这对我来说非常有效,可以循环遍历实体并根据它们的定义生成代码层。虽然我希望内置的 EF 东西是开源的,但它确实是代码生成的金矿。我不太清楚如何像 EF 那样根据存储过程结果创建 C# 对象。

    【讨论】:

      猜你喜欢
      • 2017-11-20
      • 2011-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-06
      • 1970-01-01
      相关资源
      最近更新 更多