Приложение SL не подключается к базе данных из IIS, но подключается из VS2010 - аутентификация SQL Server, а не Wndws Auth - PullRequest
1 голос
/ 04 августа 2010

Я сделал два небольших / тестовых приложения Silverlight с VS2010 (я новичок в этом), с той же проблемой с обоими ... Когда я запускаю / отлаживаю его из VS2010, приложение запускается и подключается к базе данных хорошо. Но когда я опубликую его в IIS (на той же машине, где включен VS2010), приложение запустится, но не подключится к базе данных.

Я использую аутентификацию SQL Server.

Аппарат Windows 7 Premium (у меня такая же проблема на компьютере с Windows 7 Pro) с использованием IIS 7.5.7600.16385

У меня была эта проблема на нескольких машинах (у моих коллег тоже) ... Очень печально, что мы не можем заставить наши приложения SLight работать (подключаться к БД) из IIS, только при запуске из VS2010. Надеюсь, это простое изменение, чтобы «исправить» это.

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

Я пробовал то, что упомянуто здесь безрезультатно: http://www.codeproject.com/KB/silverlight/deploy-sl4-with-db.aspx

В противном случае мои настройки IIS в основном "из коробки".

Мой файл web.config:

<?xml version="1.0"?>
<configuration>
<connectionStrings>
  <add name="myvisionexpressEntities" connectionString="metadata=res://*/Models.ContactsDM.csdl|res://*/Models.ContactsDM.ssdl|res://*/Models.ContactsDM.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=MACHINE_NAME\sqlexpress;Initial Catalog=dev;User Id=myuser;Password=mypassword;Integrated Security=False;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" /> 
  </connectionStrings>
<system.serviceModel>
  <serviceHostingEnvironment aspNetCompatibilityEnabled="true"
    multipleSiteBindingsEnabled="true" />
</system.serviceModel>
<system.web>
  <compilation debug="true" targetFramework="4.0" />
  <httpModules>
    <add name="DomainServiceModule" type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
  </httpModules>
</system.web>
</configuration>

1 Ответ

0 голосов
/ 04 августа 2010

Просто чтобы уточнить: ваш веб-сайт не может подключиться к базе данных?Используете ли вы RIA Services для подключения Silverlight к базе данных?Вы получаете ошибку или просто нет данных?Вы смотрели в средстве просмотра событий Windows на сервере, чтобы узнать, выводит ли IIS ошибку?

Я подозреваю, что это будет основано на разрешениях.база данных в порядке, где бы он ни жил (каталог сайта IIS).Если вы этого еще не сделали, скопируйте сайт в папку InetPub / wwwroot, и он унаследует разрешения для пользователей IIS.

...