Как я могу сделать профилировщик ASP.NET MVC mini с Linq 2 SQL?
ASP.NET MVC Mini Profiler выглядит потрясающе, но я не использую пример использования Linq 2 SQL.
Это пример Linq2SQL из документации профилировщика:
partial class DBContext
{
public static DBContext Get()
{
var conn = ProfiledDbConnection.Get(GetConnection());
return new DBContext(conn);
// or: return DataContextUtils.CreateDataContext<DBContext>(conn);
}
}
Как это использовать в моем реальном приложении? Я бы ожидал какой-то обертки вокруг моего DataContext, но это, похоже, работает по-другому. Я даже не знаю, где именно это метод GetConnection() из примера.
Спасибо,
Адриан
Ответы
Ответ 1
Наконец понял это. Если у кого-то есть тот же вопрос:
private static DataClassesDataContext CreateNewContext()
{
var sqlConnection = new SqlConnection(<myconnectionstring>);
var profiledConnection = ProfiledDbConnection.Get(sqlConnection);
return DataContextUtils.CreateDataContext<DataClassesDataContext>(profiledConnection);
}
Ответ 2
Ни один из других ответов не работал у меня. Добавив это в мой класс DataClassesDataContext в моем DataClasses.Designer.cs сделал:
public static DataClassesDataContext CreateNewContext()
{
var sqlConnection = new DataClassesDataContext().Connection;
var profiledConnection = MvcMiniProfiler.Data.ProfiledDbConnection.Get(sqlConnection);
return new DataClassesDataContext(profiledConnection);
}
Ответ 3
GetConnection() - это функция, которая возвращает DbConnection. Вероятно, вы просто выполните
var conn = ProfiledDbConnection.Get(new System.Data.SqlClient.SqlConnection(your_connection_string));
вместо.