搭建控制器时抛出的调用目标抛出异常
Posted
技术标签:
【中文标题】搭建控制器时抛出的调用目标抛出异常【英文标题】:Exception has been thrown by the target of an invocation thrown when scaffolding a controller 【发布时间】:2015-03-02 12:16:08 【问题描述】:我创建了一个单独的类库项目来存储数据库上下文和模型类。 在同一个解决方案中,我创建了一个 ASP.NET MVC 项目并引用了类库项目,并将数据库上下文的连接字符串包含在项目的 Web.config 文件中。
但是,当我尝试添加控制器(带有视图,使用 EF)时,出现以下错误:
调用的目标已抛出异常。
我可以在“添加控制器”下拉框中看到数据库上下文和模型类,所以我认为这不是引用问题。
如果有人也遇到此错误(使用此配置),我们将不胜感激。
【问题讨论】:
当我的上下文包含意外声明为List
而不是 DbSet
的集合时,我遇到了类似的问题。
感谢您的回复。我刚刚检查了它们,它们都是使用 DbSet 声明的。问题是,我在同一个解决方案中有另一个“Windows 服务”项目,引用同一个类库没有问题。
这里有几个类似问题的案例,可以尝试一些事情。其中一个可能是十几个不同的问题:***.com/q/23576294/84206 或 ***.com/q/23910162/84206
谢谢!现在检查它们...
非常感谢亚伦!在您发布的链接之一 (***.com/a/24154061/3315406) 中找到了解决方案。我有不止一个 ConnectionStrings 定义。我删除了默认值并将其替换为我的类库中的 ConstringStrings。现在工作正常:D
【参考方案1】:
我定义了多个 ConnectionStrings。我删除了默认值并将其替换为我的类库中的 ConstringStrings。现在工作正常!
解决方案取自以下帖子:Application can't scaffold items
【讨论】:
在我的例子中,我将连接字符串名称参数从MyDbContext("connectionString")
更改为 MyDbContext("name=connectionString")
【参考方案2】:
是的,就我而言,我在 Web.config 文件中声明了两次配置块。在我卸下一个脚手架后,脚手架就起作用了。
【讨论】:
【参考方案3】:在我修复 Microsoft.EntityFrameworkCore 的版本以匹配 Microsoft.EntityFrameworkCore.Tools 之前,我遇到了同样的问题。毕竟是版本不匹配!
【讨论】:
以上是关于搭建控制器时抛出的调用目标抛出异常的主要内容,如果未能解决你的问题,请参考以下文章
客户端调用web Service时抛出 java.lang.reflect.InvocationTargetException 异常