ASP.net mini profiler linq-to-sql

时间:2011-12-27 00:07:12

标签: linq-to-sql designer mvc-mini-profiler

我试图让它在mini Profiler中记录linq-to-sql为the documentation says

我将此添加到我的App_Code/DataClasses.designer.cs,如下所示:

public MainContext() : 
        base(global::System.Configuration.ConfigurationManager.ConnectionStrings["ScirraConnectionString"].ConnectionString, mappingSource)
{
    OnCreated();
}

// Code I'm adding in for the mini profiler
partial class DBContext
{
    public static DBContext Get()
    {
        var conn = new MvcMiniProfiler.Data.ProfiledDbConnection(GetConnection(), MiniProfiler.Current);
        return new DBContext(conn);
    }
}

但它会引发错误:

The name 'GetConnection' does not exist in the current context  

我也试过这个:

partial class DBContext
{
    public static DBContext Get()
    {
        var conn = ProfiledDbConnection.Get(new System.Data.SqlClient.SqlConnection(global::System.Configuration.ConfigurationManager.ConnectionStrings["ScirraConnectionString"].ConnectionString));
        return new DBContext(conn);
    }
}

但它会抛出

'MvcMiniProfiler.Data.ProfiledDbConnection' does not contain a definition for 'Get'

我已经提到How can I make the ASP.NET MVC mini profiler work with Linq 2 SQL?,但那里的解决方案似乎都不适用于我。

有人能告诉我如何让它为linq-to-sql工作吗?

1 个答案:

答案 0 :(得分:1)

如果你改变这个,你的第二个经验应该有效:

ProfiledDbConnection.Get(...)

......对此:

new ProfiledDbConnection(...)

因此,您应该使用构造函数来代替静态getter。

我认为他们在v1和v2之间的某处改变了ProfiledDbConnection的API,你仍然可以找到旧版本的示例代码。