Предоставленный "файл" схемы URI недействителен, ожидаемый "http"

Я создал небольшое приложение Silverlight 4.0/RIA Services и протестировал его. Я разработал приложение на машине дома и должен был переместить его в рабочую область. Я сделал это, нажав на исходный репозиторий, а затем клонировал его на машину dev на работе. Он создается без ошибок в обоих местоположениях.

Проблема возникает при попытке отладки в новом местоположении. При первом методе Load() в контексте домена я получаю следующую ошибку:

The provided URI scheme 'file' is invalid expected 'http'

Я получаю, что отладчик пытается работать с URI на основе файлов, а не с URI HTTP. Но почему? И как это исправить?

Поиск через SO возвратил некоторые аналогичные ошибки относительно недопустимых схем URI, но не из них помогли мне с этой конкретной проблемой.

Спасибо, Джим

Ответ 1

Убедитесь, что ваш проект запуска - это веб-проект, а не сам проект Silverlight.

Ответ 2

Что, вероятно, происходит, так это то, что клиентское приложение Silverlight пытается связаться с веб-службой RIA Services на стороне сервера, используя протокол "file://".
Вы запустили файл Silverlight XAP непосредственно из файловой системы сервера, а не через URL-адрес "http://"? Silverlight пытается использовать тот же протокол, что и тот, который использовался для получения файла XAP.
По этой же причине при запуске приложения из Visual Studio установите веб-проект в качестве проекта запуска вместо проекта Silverlight (клиент).

Ответ 3

Если вы используете OOB (Out Of Browser) и хотите отлаживать, тогда вам нужно настроить проект клиента Silverlight как проект запуска, также в рамках проекта сервера, щелкните правой кнопкой мыши на вашем * TestPage.html и "Сделать стартовой страницей". Затем, если вы получите ошибку...

The provided URI scheme 'file' is invalid expected 'http'

Затем откройте страницу свойств клиента Silverlight и UNCHECK "Включите запуск приложения из браузера", нажмите "Сохранить" и затем ПРОВЕРЬТЕ установку, и она должна работать. видеть... http://blogs.msdn.com/b/deepm/archive/2010/07/16/debugging-an-oob-silverlight-business-application.aspx

Ответ 4

Я уверен, что вы должны ссылаться на файл на стороне сервера, а не на локальный файл. Кроме того, большинству приложений Silverlight не разрешено обращаться к локальным файлам.