У меня есть некоторые проблемы при развертывании приложения Silverlight 4 на компьютере с удаленным сервером. Мое приложение состоит из космополитической темы (модель главной / дочерней страниц), которая связана с двумя службами для получения конкретной информации.
Первый сервис довольно прост. Это служба asmx, которая отправляет имя пользователя для входа в приложение Silverlight.
Второй - это сервис LinqToSQL, который передает некоторую информацию в автозаполнение и инструмент поиска.
Я разработал приложение на своем компьютере с использованием локального сервера SQL. Когда я тестирую локально с типом адреса, подобным этому (http://localhost:4080),, он работает отлично. Но при развертывании на сервере с использованием доменного имени выдается ошибка, говорящая о том, что удаленный сервер возвратил ошибку: NotFound.
Я проследил и проверил все этапы развертывания, но проблема все еще остается. Я стараюсь всеми средствами найти решение этой проблемы. Конечно, просмотрите список необходимых условий на этих сайтах:
http://msdn.microsoft.com/en-us/library/ff426912%28v=vs.91%29.aspx
Сначала я попытался развернуть приложение, не мешая сетевым администраторам, установив необходимые библиотеки DLL в каталоге Bin моего проекта. Я установил эти 3 dll (System.ServiceModel.DomainServices.Server.dll, System.ServiceModel.DomainServices.Hosting.dll и Microsoft.ServiceModel.DomainServices.LinqToSql.dll). Конечно, ничего не получалось.
Затем я прошу сетевого администратора установить службы WCF RIA. Должен ли он настроить что-то другое, кроме установки служб WCF RIA? Является ли этот сервис Microsoft.ServiceModel.DomainServices.LinqToSql.dll.
Я подозреваю, что моя проблема связана с файлом конфигурации: ServiceReferences.ClientConfig или Web.config. Но я включил ту же самую информацию с сайта развертывания MSDN, поэтому не вижу, где может быть моя проблема. Я использую неправильную технику для публикации проекта? Я публикую сайт с использованием метода файловой системы, а затем после изменения файла конфигурации укажите правильное имя домена.
Я могу связаться со службами, набрав http://domainname/ MeritService1.svc. Это говорит мне, что я могу проверить с svcutil.exe или slsvcutil.exe. Потеряю ли я много времени, тестируя это?
Кстати, Fiddler не дает большой информации, принимает код ошибки 500.
Кажется, что у многих разработчиков такая же проблема, но я не знаю, к чему стремиться! У кого-нибудь есть подсказка?
Вот спецификации:
Локальный компьютер: Windows XP,
Браузер: IE8 с Silverlight
Серверный компьютер: Windows 2003 с IIS 6, .NET 4.0 и WFC RIA.