проблема в Silverlight опубликовать - PullRequest
1 голос
/ 07 июня 2009

У меня есть объект silverlight 2.0 на содержимом главной страницы. Я вижу это на локальном, но не вижу на хосте после публикации. согласно блогу Microsoft я добавляю 2 MIME-типа xaml и xap, но объект silverlight не появляется. я не могу видеть содержимое объекта silverlight, но могу настроить silverlight, щелкнув правой кнопкой мыши. пожалуйста, ведите меня.

Ответы [ 5 ]

3 голосов
/ 08 июня 2009

Если вы можете щелкнуть правой кнопкой мыши и получить меню Silverlight, ваш тег object явно показывает ОК, что является хорошим началом.

Вы не упоминаете, видите ли вы анимацию "процентной загрузки" с синей точкой? Если это появляется, то плагин загружает ваш файл XAP - НО, если вы не видите анимацию загрузки, вероятно, существует проблема с «получением» самого файла XAP. Есть две общие причины:

1) Сервер не будет обслуживать файлы XAP . На самом деле это довольно часто, так как по умолчанию IIS не обслуживает неизвестные расширения файлов, и для многих хостинг-провайдеров это включает .XAP. Проверить это очень просто: просто укажите путь к вашему XAP в браузере и попробуйте загрузить его ... например. http://racereplay.net/ClientBin/Silverlight2.xap должно появиться диалоговое окно «Загрузить этот файл».

ЕСЛИ вы получаете 404 страницу, не найденную , именно поэтому ваша страница не работает.

Исправление в этом случае заключается либо в (i) обновлении настроек IIS (вы говорите, что вы уже установили типы MIME, поэтому просто проверьте, что они правильные), ИЛИ (ii) ПЕРЕИМЕНОВАНИЕ вашего .XAP на .ZIP ( как сам файл, так и в теге <object>). У большинства серверов нет проблем с файлами ZIP, и Silverlight тоже не против.

2) Возможно, неправильный путь к XAP . Дважды проверьте правильность пути, скажем для этого примера

<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
<param name="source" value="../ClientBin/Silverlight2.xap"/>

, если вышеуказанный тег имеет значение http://racereplay.net/SmhHalf/default.aspx ... скопируйте путь XAP (источник) на URL-адрес и убедитесь, что вам предлагается загрузить файл, например http://racereplay.net/SmhHalf/../ClientBin/Silverlight2.xap

Исправление в этом случае - просто правильно выбрать путь. Вы упоминаете, что тег <object> находится на мастер-странице, поэтому вам, вероятно, понадобится абсолютный путь (например, "/ClientBin/Your.XAP"), потому что я думаю, что ваша мастер-страница может использоваться в /default.aspx а также в любом подкаталоге на вашем сайте (/AboutUs/Help.aspx или где-либо еще).

Как сказал Энтони, программное обеспечение на сервере не имеет значения (за исключением веб-сервера, позволяющего загружать .XAP файлы), поэтому не беспокойтесь о версиях .NET там.

Если вы обновите свое сообщение, когда попробуете эти предложения (и, возможно, сами фактические URL), другие могут предложить больше советов.

0 голосов
/ 18 июля 2009

Да, как вы, ребята, сказали, что у меня тоже есть проблема, но когда я изменил расширение файла на zip, это сработало

Кажется, нужно добавить расширение xap в IIS в MIME

Спасибо, ребята.

0 голосов
/ 30 июня 2009

Я использую общий веб-хостинг. После переименования файла xap в zip и обновления имени файла в теге мое первое приложение silverlight работает.

Спасибо.

0 голосов
/ 08 июня 2009

Если вы используете веб-сервис WCF, убедитесь, что у вас есть файл clientaccesspolicy.xml в корневом каталоге вашего iis. Если вы вызываете службу при запуске, это может привести к тому, что проект сгенерирует исключение и остановит выполнение.

0 голосов
/ 07 июня 2009

Отладка с помощью Fiddler , чтобы увидеть, что на самом деле запрашивается. Вы уверены, что опубликовали XAP в том месте, где его ожидает HTML (обычно это папка ClientBin)?

Редактировать

Дополнительный вопрос: «Silverlight 2.0 нуждается в .NET 3.0 или 3.5 на хосте?»

Какая версия .NET работает на хосте, не имеет значения. Возможно предоставить приложение silverlight в простом старом HTML.

...