Служба WCF, размещенная на IIS7.5 при обращении к базе данных, отображает ошибку 400 неверный запрос - PullRequest
1 голос
/ 11 июля 2011

У меня есть служба wcf, у которой есть метод, который возвращает List после сбора информации из базы данных на основе SQL Server 2008. При работе в режиме разработки проблем не возникает, но когда я запускаю службу в IIS и пытаюсь получить доступ к методу, который получает информацию из базы данных, браузер возвращает: «неверный запрос 400». Когда я вызываю метод, который не работает с базами данных, это успешно.

Я действительно в отчаянии - я искал и искал, пробовал разные вещи, но ничего не получалось. Спасибо,

1 Ответ

1 голос
/ 11 июля 2011

Это почти наверняка проблема с разрешениями. Не зная ваших конкретных настроек, вот несколько вещей, которые нужно искать:

  1. Если вы используете проверку подлинности Windows для своей базы данных SQL Server, убедитесь, что удостоверение, используемое пулом приложений вашей службы, имеет правильные разрешения для базы данных SQL Server / таблиц / и т. Д.
  2. Если вы используете аутентификацию SQL для своей базы данных SQL Server, убедитесь, что имя пользователя и пароль указаны правильно в строке подключения и что в базе данных правильно установлены разрешения.

Если вы не используете олицетворение или не указали конкретного пользователя на уровне своего сайта в IIS, скорее всего, это одно из перечисленных выше.

Я предполагаю, что вы используете проверку подлинности Windows для подключения к базе данных SQL Server, и вы не указали идентификатор пула приложений . Мой совет - использовать конкретную учетную запись для пула приложений (домен \ имя пользователя), а затем дать этой учетной записи надлежащие разрешения для базы данных.

Вам также необходимо настроить трассировку для захвата реального исключения.

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