3

我想使用 MVC Mini Profiler 进行实体框架连接。我这样做的方式是这样的:

public static XXXXX.DAL.BO.XXXXXEntities GetEntityConnection()
    {
        var conn = ProfiledDbConnection.Get(new EntityConnection(ConfigurationManager.ConnectionStrings["XXXXXEntities"].ConnectionString));
        return ObjectContextUtils.CreateObjectContext<XXXXX.DAL.BO.XXXXXEntities>(conn);
    }

所以下面这行是获取其余代码的上下文:

XXXXX.DAL.BO.XXXXXEntities ctx = GetEntityConnection();

但是,当我尝试在浏览器上查看此站点时,WebDev.WebServer40.exe 崩溃了。

有谁知道为什么?

多谢了。

PS 以前是

XXXXX.DAL.BO.XXXXXEntities ctx = new XXXXX.DAL.BO.XXXXXEntities();

它工作得很好。

4

2 回答 2

1

如果您能够为 EF6 使用 v3.0.10 nuget,那么连接实体框架所需要做的就是

protected void Application_Start()
{
    MiniProfilerEF6.Initialize();
}

使用 EF 5 或更早版本(带有相应的 nuget 包)将要求您生成一个EFProfiledDbConnection如 Anirudh 在他的回答中所写的:

var conn =  new EFProfiledDbConnection(GetConnection(), MiniProfiler.Current);
return ObjectContextUtils.CreateObjectContext<MyModel>(conn);
于 2014-05-07T06:00:01.603 回答
0

尝试将您的连接初始化为:

connection = new EFProfiledDbConnection( new EntityConnection(ConfigurationManager.ConnectionStrings["XXXXXEntities"].ConnectionString),
                        MiniProfiler.Current);

为我工作。

于 2013-12-17T09:29:15.957 回答