У меня есть проект asp.net, который использует mvc-mini-profiler.Я использовал версию 1.7 пакета NuGet и заметил, что есть обновленный пакет, версия которого 1.9.Я обновил пакет, и теперь мой код больше не компилируется.Код, который не может быть скомпилирован:
public static T GetProfiledContext<T>() where T : System.Data.Objects.ObjectContext
{
var conn = GetStoreConnection<T>();
if (_enableProfiling)
{
conn = ProfiledDbConnection.Get(conn);
}
return ObjectContextUtils.CreateObjectContext<T>(conn);
}
Ошибки компиляции сообщают о следующих проблемах:
- «MvcMiniProfiler.Data.ProfiledDbConnection» не содержит определения «Get».
- Имя 'ObjectContextUtils' не существует в текущем контексте.
Я заметил, что могу создать экземпляр ProfiledDbConnection и передать ему соединение и объект типа IDbProfiler., но я не уверен, как мне получить этот объект.
Относительно ObjectContextUtils, я понятия не имею, что я должен использовать.
Как я могу исправить эти проблемы?
Обновление:
Следуя рекомендациям @ monkeychatter, мне удалось создать код.Теперь я получаю следующее исключение времени выполнения:
После вызова метода get_ProviderFactory для экземпляра поставщика хранилища типа «MvcMiniProfiler.Data.ProfiledDbConnection» был возвращен нуль.Поставщик магазина может работать неправильно.
Изучив ProfiledDbConnection в ILSpy, я заметил, что он больше не переопределяет DbProviderFactory.Это кажется причиной ошибки, так как базовая реализация возвращает ноль.Кто-нибудь смог обойти эту проблему?