Пул подключений срабатывает только при попадании на домашнюю страницу - ASP.NET MVC5 Entity Framework

1

Я действительно чувствую себя глупо, задавая этот вопрос, но я не могу понять этого, хотя это звучит тривиально.

Проблема возникает, когда мой сайт простаивает, и пул соединений закрыт - если я пытаюсь получить доступ к странице, отличной от главной страницы, я получаю сообщение YSOD

"При установлении соединения с SQL Server возникла связанная с сетью или специфичная для экземпляра ошибка,

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

Я вижу, что соединение отключается с помощью sp_who и возвращается при ударе по домашней странице.

Я использую ASP.NET MVC5 вместе с Entity Framework 6. Я не указывал никаких параметров для пула соединений, поскольку он по умолчанию включен с EF. Я также обертываю все мои контексты БД при использовании блоков.

Кто-нибудь знает, что может вызвать это или даже где начать искать в отношении отладки этого?

Я думаю, что эта проверка подлинности может быть ответственна за это - но опять же, конечно же, если это время было бы перенаправлено на путь по умолчанию для учетной записи/входа, который MVC5 задает вам при запуске нового проекта.

UPDATE Я смог исправить это, добавив SimpleRoleProvider к webconfig в:

    <roleManager enabled="true" defaultProvider="SimpleRoleProvider">
      <providers>
        <clear />
        <add name="SimpleRoleProvider" connectionStringName="DefaultConnection" type="WebMatrix.WebData.SimpleRoleProvider, WebMatrix.WebData" />
     </providers>
   </roleManager>

Затем мне пришлось двигаться:

WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true);

в мой Global.cs, так что это было первое, что называется.

  • 0
    Используете ли вы стандартную / стандартную аутентификацию MVC 5?
  • 0
    Привет, Кит, да, я действительно. Я оставил этот код с момента создания проекта. Есть ли известная проблема с этим?
Показать ещё 5 комментариев
Теги:
asp.net-mvc
entity-framework-6

1 ответ

0

Я смог исправить это, добавив SimpleRoleProvider в webconfig в:

<roleManager enabled="true" defaultProvider="SimpleRoleProvider">
  <providers>
    <clear />
    <add name="SimpleRoleProvider" connectionStringName="DefaultConnection" type="WebMatrix.WebData.SimpleRoleProvider, WebMatrix.WebData" />
 </providers>
</roleManager>

Затем мне пришлось двигаться:

WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true);

из InitializeSimpleMembershipAttribute.cs в my Global.cs, так что это было первое, что называется.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню