#asp.net-mvc #entity-framework #c#-4.0 #mvc-mini-profiler
#asp.net-mvc #entity-framework #c #-4.0 #mvc-mini-profiler
Вопрос:
В обновлении 1 EF 4.1 была ошибка в отношении профилирования, которая теперь исправлена, и я пытаюсь сначала запустить профилирование с использованием MySQL с кодом EF 4.2.
Я попытался поместить
MiniProfilerEF.Инициализировать ();
в моем приложении запуск, но получено сообщение об ошибке
Не удается найти запрошенного поставщика данных .Net Framework. Возможно, он не установлен.
Комментарии:
1. Просто в качестве примечания, если вы берете код как есть, который проверяется в проекте MiniProfiler на Github, приведенный выше код работает нормально, поэтому не уверен, какая ошибка есть, поскольку она была исправлена и не отправлена в NuGet
Ответ №1:
http://code.google.com/p/mvc-mini-profiler/
Обновление EF 4.1 1
Обратите внимание, что обновление EF 4.1 1 (версия, которая в настоящее время находится на NuGet) имеет критическое изменение, которое выдает следующую ошибку при указании строки подключения:
The given assembly name or codebase was invalid. (Exception from HRESULT: 0x80131047)
MiniProfiler пытается решить эту проблему, определяя версию EntityFramework, с которой он работает. Если это не сработает (из-за исключений безопасности), принудительно примените взлом, заменив вызов Initialize() на:
MiniProfilerEF.Initialize_EF42(); // in Application_Start
Однако в настоящее время это не позволяет профилировать базы данных SqlCE или Oracle.
Чтобы обойти это, в вызов Initialize был добавлен дополнительный параметр:
Если вы явно указываете строки подключения в своем web.config, используйте
MiniProfilerEF.Initialize();
. Это не будет профилировать базы данных SqlCE или Oracle, если вы не указываете строки подключения (выводятся автоматически) и хотите поддержку SqlCE, используйтеMiniProfilerEF.Initialize(false);
. Обратите внимание, это должно быть временным решением, пока EF 4.2 не станет широко доступным.