ASP.net мини-профилировщик linq-to-sql - PullRequest
0 голосов
/ 27 декабря 2011

Я пытаюсь записать linq-to-sql в мини-профилировщике как , в документации написано

Я добавляю это к своему 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'

Я ссылался на Как я могу заставить мини-профилировщик ASP.NET MVC работать с Linq 2 SQL? , но ни одно из решений там не работает для меня.

Может кто-нибудь показать мне, как я могу заставить его работать для linq-to-sql?

1 Ответ

1 голос
/ 13 июля 2012

Ваш второй экспериментатор должен работать, если вы измените это:

ProfiledDbConnection.Get(...)

... на это:

new ProfiledDbConnection(...)

Так что вместо статического геттера вы должны использовать конструктор.

Я думаю, что они изменили API для ProfiledDbConnection где-то между v1 и v2, и вы все еще можете найти пример кода для более старой версии.

...