EF Power Tools Beta 2 - 调用目标抛出了异常

时间:2012-09-04 12:10:07

标签: entity-framework

我有EF 5.0代码优先VS 2012项目和所有Entity Framework菜单命令(View Entity Data Model DDL SQL)产生“调用目标抛出异常”弹出窗口。我认为改变的是EF Power Tools Beta 1(或VS 2010,我不确定)用于在输出窗口中显示EF Power Tools消息。现在我得到的只是弹出窗口......这是VS还是Power Tools问题?

5 个答案:

答案 0 :(得分:4)

这是我的工作:

注释构造函数,并将静态MyDbContext保持原样 - >

public class MyDbContext: DbContext
{
    public static string ConnectionName = "Name = SMS_ADvTECHContext";
    static MyDbContext()
    {
        Database.SetInitializer<SMS_ADvTECHContext>(null);
    }

/*  public SMS_MyDbContext()
        : base(ConnectionName)
    {
    }*/
}

然后,如果右键单击上下文类 - &gt; Enityframework - &gt;查看实体数据模型(只读)它生成视图!

答案 1 :(得分:1)

当我在包含我的DbContext类的项目中的App.config 中没有配置正确的默认连接工厂时,我遇到了这个错误。我更新它以使用正确的工厂,这个错误消失了。在我的例子中,我将其设置为使用LocalDbConnectionFactory:

 <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
        <parameters>
            <parameter value="v11.0" />
        </parameters>
    </defaultConnectionFactory>
</entityFramework>

答案 2 :(得分:1)

遇到这个错误,这是一个更简单的问题......包含我的Context的项目不是启动项目。一旦我将项目设置为启动项目,它就开始工作了。

答案 3 :(得分:0)

当您选择Entity Framework菜单命令时,Visual Studio可能无法确定用于DBContext的连接字符串。

就我而言,我能够通过验证我的dbContext有一个“默认”连接字符串来解决这个问题。因此,当您右键单击db context并选择Entity framework时,您将与DB建立连接。

换句话说,我修改了我的DBContext,从命令行参数到我的app选择连接字符串。因此,通常,我的db上下文没有“默认”值。

public class MyDbContext : DbContext
{
    public static string ConnectionName; 

    public DnnDbContext()
        : base( "Name=" + ConnectionName)  {     
    }

如您所见,默认情况下我没有ConnectionString。

我改为:

    public static string ConnectionName = "DefaultConnNameInAppConfig"; 

答案 4 :(得分:0)

当我在web.config中配置了多个具有相同名称的连接字符串时,我遇到了这个问题。