Служба WCF работает в cassini, но не в IIS

Я создал службу с подключением к базе данных, которая отлично работает в Cassini, когда при копировании службы в inetpub все работает нормально, кроме вызовов базы данных, они всегда возвращают эту ошибку:

Сервер обнаружил ошибку при обработке запроса. Подробности смотрите в журналах сервера."

Теперь у меня есть 2 вопроса,

  1. Я могу найти журналы сервера в папке C:\inetpub\logs\LogFiles\W3SVC1. Но упомянуты ли они, потому что они, похоже, не содержат никаких полезных данных.

  2. Как это возможно, что в Cassini все работает, а в IIS нет?

Если есть вопросы по моему вопросу, пожалуйста!

Изменить Я использую Visual Studio Team System 2008 и IIS 7.0.


person nldev    schedule 05.04.2011    source источник
comment
Какая версия ИИС? Какая версия Visual Studio?   -  person ExtraGravy    schedule 05.04.2011
comment
Добавил в основной пост, IIS7 и VS team system 2008   -  person nldev    schedule 05.04.2011


Ответы (3)


Запустите Visual Studio от имени администратора

person Zaragon    schedule 05.04.2011
comment
Он отлично работает в Visual Studio, мой вопрос, почему он не работает в IIS - person nldev; 06.04.2011
comment
хорошо, но если вы не запускаете VS от имени администратора, вы не можете использовать IIS. Мой проект отлично работает с IIS без особых настроек. - person Zaragon; 06.04.2011
comment
Хорошо, но я имею в виду, что я использую IIS отдельно от VS, я копирую файлы из веб-сервиса в inetpub, а затем запускаю IIS... - person nldev; 06.04.2011
comment
Хорошо, теперь я отлаживаю прямо в IIS из Visual Studio, намного проще, спасибо! - person nldev; 06.04.2011

Обычно это проблема с правами доступа.

Если вы используете значения по умолчанию:

  • Строка подключения использует доверенное соединение
  • Когда вы запускаете через cassini, вы находитесь в контексте безопасности вашего пользователя.
  • Когда вы запускаете через IIS, вы находитесь в контексте безопасности идентификатора пула приложений, который является сетевой службой.

Чтобы исправить это, вы можете:

  • изменить строку подключения
  • изменить идентификатор пула приложений
  • предоставить сетевому сервису доступ к вашей базе данных
person Shiraz Bhaiji    schedule 05.04.2011
comment
Хорошо, спасибо, это звучит полезно, на сегодня я закончил, поэтому я попробую это завтра и оценю ответы! - person nldev; 05.04.2011

Я думаю, это разрешения. Вы используете аутентификацию Windows?

В случае аутентификации Windows: http://www.codeguru.com/csharp/.net/net_security/authentication/article.php/c7725

person BrandonZeider    schedule 05.04.2011
comment
Да, я использую проверку подлинности Windows? - person nldev; 05.04.2011