突然间,我在实例化生成的MetadataException类时一直收到ObjectContext。 App.Config中的连接字符串看起来正确-自从上次使用以来就没有改变过-我已经尝试从基础数据库重新生成新模型(edmx文件)而没有任何改变。

谁有想法?

进一步的细节:我没有更改任何属性,没有更改任何输出程序集的名称,也没有尝试将EDMX嵌入程序集。我离开工作仅等了10个小时才回来。然后它不再工作了。

我尝试过重新创建EDMX。我尝试过重新创建该项目。我什至尝试从头开始重新创建数据库。没运气。

最佳答案

这意味着应用程序无法加载EDMX。有几件事会导致此。

  • 您可能已将模型的MetadataArtifactProcessing属性更改为复制到输出目录。
  • 连接字符串可能错误。我知道您说您没有更改它,但是如果您更改了其他内容(例如,程序集的名称),则可能仍然是错误的。
  • 您可能正在使用后编译任务将EDMX嵌入到程序集中,由于某种原因,该程序不再起作用。

  • 简而言之,您的问题中确实没有足够的细节来给出准确的答案,但是希望这些想法能使您走上正确的道路。

    更新:我已经写了a blog post with more complete steps for troubleshooting

    关于c# - MetadataException : Unable to load the specified metadata resource,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/689355/

    10-12 00:52