Проблема с сущностью в WCF и IIS - PullRequest
3 голосов
/ 20 июля 2010

У меня есть служба WCF, база данных MS SQL и среда разработки Visual Studio 2008 на одном компьютере. Операционная система - Windows Server 2008 с IIS 7 на нем. В IIS 7 размещена моя служба WCF, и служба подключается к базе данных с помощью Microsoft Entity Framework. В настоящее время я тестирую службу WCF с помощью программы WCF Test Client от Microsoft.

Проблема в том, что когда я объявляю сущность, подобную этой, в моем методе WCF:

NewTestDBEntities db = new NewTestDBEntities();

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

Это сообщение об ошибке от клиента службы WCF:

Не удалось вызвать службу. Возможные причины: служба недоступна или недоступна; конфигурация на стороне клиента не соответствует прокси; существующий прокси-сервер недействителен. Обратитесь к трассировке стека для более подробной информации. Вы можете попытаться выполнить восстановление, запустив новый прокси-сервер, восстановив конфигурацию по умолчанию или обновив службу.

Я знаю, что эта строка выдает ошибку, потому что, если я уберу эту строку, вызов WCF завершится.

Я также пытался протестировать службу WCF, запустив отладчик (клиент службы WCF подключен к серверу разработки ASP.NET, а не IIS), и эта строка кода

NewTestDBEntities db = new NewTestDBEntities();

работает без ошибок. Кто-нибудь знает, почему это происходит?

Большое спасибо.

1 Ответ

1 голос
/ 20 июля 2010

Ваша служба WCF размещена в IIS - но скопировали ли вы строку подключения, необходимую для EF4, в соответствующую web.config тоже ??

Если только создание контекста объекта (NewTestDBEntities) не работает, как правило, потому что информация о соединении недоступна для вашего хост-приложения (здесь: IIS).

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