Ошибка Silverlight Entity Framework DataContractSurrogate - PullRequest
1 голос
/ 04 мая 2011

Я получаю сообщение об ошибке тайм-аута соединения с базой данных при вызове моей доменной службы для возврата объекта Entity Framework. Я использую Silverlight 4 с Visual Studio 2010.

Начальная ошибка перехватывается на стороне клиента Silverlight после выполнения операции EntityQuery Load и выглядит следующим образом:

“An error occurred while executing the command definition. See the inner exception for    details. 
InnerException message: Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.”

Сначала я подумал, что может быть ошибка с базой данных SQL Server, так как эта ошибка, казалось, внезапно появилась, но я обнаружил ошибку, которую отслеживал глубже в классе Domain Service, которая выглядит следующим образом:

Function evaluation timed out.
The type 'MyProject.Web.Models.MyCustomEntity' exists in both 'MyProject.Web.dll' and   'DataContractSurrogates_cfc4b316-5204-4fc6-830c-d91c6fc0b24b'

В этом сообщении была похожая ошибка, но их разрешение мне не помогло: silverlight Тип существует как в DataContractSurrogates, так и в других

Я немного затрудняюсь объяснить это и буду очень признателен за вашу помощь!

1 Ответ

2 голосов
/ 10 мая 2011

Решил эту проблему, установив значение времени ожидания службы домена RIA на 5 минут (хотя запрос возвращается намного быстрее, чем время ожидания по умолчанию).

Все еще не уверен, почему я получил конкретную ошибку, которую я получил. И не уверен, почему запрос показался тайм-аут. Это небольшой запрос, который возвращается почти мгновенно.

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

Было принято решение увеличить время ожидания службы домена RIA:

...