2012-04-06 7 views
0

Итак, у меня есть несколько приложений ASP.NET, которые работают с SQL Server Express 2008 и работают отлично и денди. Я просто выставил новую, чтобы проверить что-то, и теперь получаю ошибку 26 - не могу найти экземпляр. Странно то, что приложение разговаривает с БД частично, потому что оно вызывает страницу входа пользователя, и если я ввожу неверные данные, он возвращает сообщение об этом (что хорошо). Когда я вхожу в правильную информацию логина он принимает его, то думает, что в течение нескольких секунд, а затем бросает ошибку 26.Ошибка подключения SQL Server Express 2008 (26)

Вот моя строка соединения -

<connectionStrings> 
    <add name="db_BPEntities" connectionString="metadata=res://*/App_Code.Data.db_BP.csdl|res://*/App_Code.Data.db_BP.ssdl|res://*/App_Code.Data.db_BP.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=LOCALHOST\SQLEXPRESS;initial catalog=db_BC_Build;user id=USER;password=PASSWORD;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" /> 
    <add name="Default" connectionString="server=LOCALHOST\SQLEXPRESS;database=db_BC_Build;USER ID=USER;password=PASSWORD;Min Pool Size=10;Max Pool Size=800;Network Library=dbmssocn" providerName="System.Data.SqlClient" />  
</connectionStrings> 

Примечания: Я изменил пользователь/пароль, Информация. БД выполняется локально с одного окна с IIS (это тестовый сайт интрасети, поэтому я в порядке с этим пока).

Так Резюме:

  1. Другие приложения убегал же DB имеют нулевые проблемы с подключением. Они все соединяются и работают нормально.
  2. Это приложение частично работает, но при входе в систему выбрасывается Ошибка 26 - Экземпляр не найден.
  3. Было бы так, что есть 2 строки подключения здесь и 1 строка подключения на других моих БД?

Действительно в тупике.

Спасибо за любые/все помогают :)

Edit: Я думаю, что проблема с Entity Framework и SQL Server Express. Кажется, что он первоначально подключается для аутентификации пользователя, но тогда связь EF для отображения данных и т. Д. Там, где он ломается. Вот где я сейчас нахожусь и пытаюсь понять это (я не разрабатывал это приложение).

ответ

1

Попробуйте подключиться без «Сетевой библиотеки = dbmssocn» в вашей строке соединения. У меня была такая же проблема (ошибка 26), и она работала для меня.

+0

Это сработало. Не знаю, почему, но это так. Gotta go google теперь, чтобы узнать, почему это отлично работает на SQL Server, но не на SQL Server Express. Спасибо за совет! – Valien

0

Цитирую SQL Network Interfaces, error: 26, эти шаги, чтобы преодолеть эту проблему:

  1. не Убедитесь, что имя сервера правильно, например, не опечатка по названию.
  2. Убедитесь, что ваше имя экземпляра правильно, и на самом деле есть такой экземпляр на вашей целевой машине. [Обновление: некоторые приложения конвертирует \\ в \. Если вы не уверены в своем приложении, пожалуйста попробовать оба Server\Instance и Server\\Instance в вашей связи строки]
  3. Убедитесь, что машина сервера доступна, например, DNS может быть решительности правильно, вы можете пинговать сервер (не всегда true).
  4. Убедитесь, что на сервере запущена служба SQL-браузера.
  5. Если брандмауэр включен на сервере, вам необходимо поставить sqlbrowser.exe и/или UDP-порт 1434 в исключение.

Для получения более подробной информации, пожалуйста, перейдите по ссылке.

+0

Пробовал все это без толку, и со всеми другими приложениями работает нормально с точно такой же экземпляр (только разные БД), некоторые из них не применяются. – Valien

0

меняю приложения конфигурационный файл в этом

<connectionStrings> 

    <!-- TLPL_ICT_OPR\MSSQLSERVER1;Initial Catalog=FMS;User ID=fms --> 


    <add name="DBConnectionString" connectionString="user id=fms;data source=TLPL_ICT_OPR\MSSQLSER;persist security info=True;initial catalog=username;password=password" providerName="System.Data.SqlClient"/> 
    <!--<add name="DBConnectionString" connectionString="user id=fms;data source=TLPL_ICT_PHOLIB\SQLEXPRESS;persist security info=True;initial catalog=FMS;password=fms4321" 
     providerName="System.Data.SqlClient" />--> 
</connectionStrings> 

<startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> 
</startup> 

после этого он работает отлично ....