Я пытаюсь использовать mvc-mini-profiler с EFCodeFirst. Я создаю DbProfiledConnection и передаю его DbContext в процессе построения, как показано ниже. Приложение продолжает работать, как и ожидалось, sql не выставляется Profiler.
public class WebContext : DbContext
{
static DbConnection _connection = new SqlConnection(ConfigurationManager.ConnectionStrings["WebContext"].ConnectionString);
static DbConnection _profiledConnection = MvcMiniProfiler.Data.ProfiledDbConnection.Get(_connection);
public WebContext()
: base(_profiledConnection, true)
{
}
ой мой плохой.
Я изменил его так, что когда мой WebContext создается в моем UnitOfWork, я передаю ProfiledDbConnection
public UnitOfWork()
{
var profiledConnection = MvcMiniProfiler.Data.ProfiledDbConnection.Get(connection);
this.context = new MyContext(profiledConnection);
}
Я проверил, и MiniProfier Current был установлен в Application_BeginRequest, и он возвращает ProfiledDbConnection, когда я затем пытаюсь выполнить запрос к базе данных, в классе ProfiledDbProviderServices выдается ошибка.
protected override string GetDbProviderManifestToken(DbConnection connection)
{
return tail.GetProviderManifestToken(connection);
}
этот метод возвращает «Поставщик не возвратил строку ProviderManifestToken». ошибка