Приложение ASP.NET - ошибка при попытке подключения к экземпляру SQL Server 2008 - PullRequest
2 голосов
/ 04 января 2011

Несмотря на то, что я постоянный читатель этого замечательного форума, это мой первый пост на нем. Я считаю, что это сообщество может помочь мне решить следующую проблему. Я пытаюсь опубликовать веб-сайт ASP.NET через IIS 6.0 (Windows 2003 Server), и у меня возникают проблемы с подключением к базе данных. Любопытно, что я установил другой веб-сайт ASP.NET в тот же IIS 6.0 с теми же свойствами и параметрами безопасности и могу без проблем подключаться к той же базе данных. Приложение, которое работает нормально, почти такое же, как и то, которое не может подключиться к SQL Server (фактически то же самое, но с несколькими модификациями). Я перечислю некоторую информацию, связанную с проблемой:

  • S.O: Windows 2003 Server
  • SQL Server Engine: SQL Server 2008 SQL Server принимает удаленные подключения? Да.
  • ASP.NET версия: 2.0.50727
  • Соединения через TCP / IP включены для экземпляра SQL Server? Да.
  • Соответствующий пользователь, которого я имею в строке подключения, действительно существует в базе данных с ролью «владелец»? Да.
  • ORM Используемый инструмент: nHibernate

При попытке запустить приложение в браузере появляется следующая ошибка:

Ошибка при установлении соединения на сервер. При подключении к SQL Server 2005, этот сбой может произойти потому что настройки по умолчанию SQL Сервер не разрешает удаленный соединения. (поставщик: Общая память Поставщик, ошибка: 40 - Не удалось открыть подключение к SQL Server)

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

Если кто-то может мне помочь, я это ценю. Большое вам спасибо за ваше время!

Ответы [ 2 ]

1 голос
/ 04 января 2011

Наиболее вероятное объяснение состоит в том, что ваши строки соединения не совпадают между двумя приложениями. Данная ошибка говорит о поставщике общей памяти, который не совпадает с соединениями TCP / IP.

0 голосов
/ 06 января 2011

Я нашел проблему.Чтобы решить эту проблему, я установил на виртуальной машине ту же ОС (Windows 2003 Server) и IIS (6.0).В этом чистом окружении я обнаружил, что изменения, которые я сделал на домашней странице, были проблемой.На этой странице aspx есть веб-части, которые я исследую, чтобы узнать, почему возникают проблемы с подключением к базе данных.Я перехожу на другую страницу веб-приложения, и оно может соединиться с базой данных и получить информацию без каких-либо проблем ... но когда я пытаюсь добраться до домашней страницы, происходит коллапс приложения из-за проблемы, о которой я говорю в этой теме.*

Я опубликую больше новостей об этой проблеме, когда полностью ее решу

Спасибо за вашу помощь и время.

...