0

我最近在我的解决方案中添加了一个 MVC4 Web 应用程序,并为它提供了对我的 Common 类库的引用。公共类库包含模型和上下文(EF Code First)。

尝试使用 Visual Studio 的脚手架功能将控制器“添加”到 MVC4 应用程序时,我收到以下错误:

无法检索“Common.Models.MyContext”的元数据。无法加载一种或多种请求的类型。检索 LoaderExceptions 属性以获取更多信息。

我发现了很多关于堆栈溢出的类似问题,但没有一个针对此特定场景解决此特定错误消息。

在我的调查中,我发现如果我从公共库中删除所有添加的包和第三方 dll,我可以使用“添加控制器”功能而不会出错。这告诉我我的一个包或第三方 dll 不在它需要的位置(如错误消息所示)。

所以我的问题是:

  1. 如何找出导致问题的 dll?某处是否有 Visual Studio 脚手架日志文件?
  2. 假设我找到了有问题的 dll ...... dll 需要在哪里修复脚手架错误?
4

2 回答 2

3

确保您的 Web 应用程序项目具有来自其他项目的所有必需引用。仅仅因为您的 Common 项目依赖于 DLL 并不意味着该引用将被复制到您的 Web 项目中。您必须手动添加依赖的 DLL 作为引用,并将 Copy Local 设置为“true”

于 2013-05-18T06:04:31.357 回答
0

如果您使用的是单独的项目,请检查 EF 是否具有相同的版本号!

于 2014-10-19T06:08:26.553 回答