Основной поставщик не удалось открыть, служба WCF с Entity Framework - PullRequest
0 голосов
/ 10 мая 2019

Наше приложение имеет тройную настройку серверов (Web, App, DB).Веб-уровень состоит из пользовательского интерфейса, а уровень приложений состоит из сервисов.У каждого есть свой выделенный сервер.Недавно наш клиент попросил перенести сервер БД на 2016 год (сейчас его в 2008 году).Итак, я взял резервную копию БД с 2008 года и восстановлен на сервере БД 2016 года.Затем я настроил службы уровня приложения (WCF и WebServices), чтобы указать базу данных 2016 года.Теперь я не могу войти.и я проверил сервисы, используя тестовый клиент WCF, и получил следующую ошибку

Основной поставщик не удалось открыть.ПОЛНОЕ ИСКЛЮЧЕНИЕ: System.ServiceModel.FaultException`1 [System.ServiceModel.ExceptionDetail]: базовый поставщик не удалось открыть.(Сведения об ошибке равны ExceptionDetail, вероятно, созданный IncludeExceptionDetailInFaults = true

Подробное внутреннее сообщение об исключении:

Истекло время ожидания. Период ожидания истек до завершения операции илиСервер не отвечаетОшибка UInt32) в System.Data.SqlClient.TdsParser.Connect (ServerInfo serverInfo, SqlInterna ...). System.ServiceModel.Channels.ServiceChannelProxy.Invoke (сообщение IMessage) Исключение, переброшенное в [0]: в System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage (IMessage reqMsg, IMessage retMsg) в System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke (тип MessageData & msgData, Int32) в client.services.SSO.validatesptoken () .. * 100*

И иногда я получаю эту внутреннюю ошибку исключения. Msg.

Тест СООБЩЕНИЕ ОБ ОШИБКЕ: Выполнение команды требует открытого и доступного соединения.Текущее состояние соединения нарушено.ПОЛНОЕ ИСКЛЮЧЕНИЕ: System.ServiceModel.FaultException 1[System.ServiceModel.ExceptionDetail]: Execution of the command requires an open and available connection. The connection's current state is broken. (Fault Detail is equal to An ExceptionDetail, likely created by IncludeExceptionDetailInFaults=true, whose value is: System.InvalidOperationException: Execution of the command requires an open and available connection. The connection's current state is broken. at System.Data.Objects.ObjectContext.EnsureConnection() at System.Data.Objects.ObjectQuery 1.GetResults (Nullable`1 forMergeOption) в

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

<add
      name="SSOObjectContext" connectionString="metadata=res://*/SSOModel.csdl|res://*/SSOModel.ssdl|res://*/SSOModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=myDBServer;initial catalog=***;Persist Security Info=True;User ID=***;Password=***;MultipleActiveResultSets=True&quot;"
      providerName="System.Data.EntityClient" />

Это не имеет ничего общего с пользовательскими привилегиями или строками подключения, поскольку я пытался и изменял их, используя ответы, но не смог найти удачу.это оказалось шипом, так как любая помощь будет высоко ценится.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...