Встраивание приложения Silverlight в веб-страницу ASP.net для более плавного перехода

В настоящее время у меня есть чисто серебряный веб-сайт с навигацией. Меня беспокоят клиенты, которые заходят на веб-сайт и сразу уходят, потому что у них должен быть установлен плагин SL, и им также нужно ждать загрузки 1,5-мегабайтного xap-файла.

Первая страница приложения silverlight - это страница входа / регистрации, где пользователь должен войти или зарегистрироваться, чтобы перейти на любую другую страницу сайта. Я думаю о замене этой страницы на веб-страницу ASP.net MVC. Поэтому, когда пользователь попадает на сайт, первая страница загружается автоматически (поскольку это будет часть сайта ASP.net MVC), и когда они регистрируются или входят в систему, приложение silverlight загружается в фоновом режиме, или если они нет плагина, чем я буду обрабатывать его немного более изящно. Как только они войдут в систему, они будут переданы в приложение Silverlight.

Просто интересно, прошел ли кто-нибудь этот корень и есть ли какие-либо советы по этому поводу?

Заранее спасибо


person Matt    schedule 23.09.2010    source источник
comment
Этот вопрос не относится к встроенному программированию - в вики-странице тегов явно указано, что встроенный тег НЕ применяется к компонентам, встроенным на веб-страницу, см. stackoverflow.com/questions/tagged/embedded   -  person uɐɪ    schedule 23.09.2010


Ответы (3)


Есть несколько подходов к этой проблеме. Я бы рассмотрел подходы к уменьшению размера исходного файла Xap путем отдельной загрузки дополнительных компонентов. Этот блог является примером но есть много других вариантов этого поиска в Интернете: «сборка динамической загрузки MEF Silverlight».

Вам может потребоваться, чтобы в вашем начальном Xap было ровно столько, сколько нужно для отображения экрана входа в систему. Тем временем он может выполнять фоновую загрузку вашей главной страницы. Возможно, вы даже сможете пойти дальше с MEF в структуре навигации, чтобы еще больше разделить ваше приложение, чтобы для отображения главной страницы также не требовался полностью загруженный набор. Вот еще один более продвинутый блог по этой теме.

person AnthonyWJones    schedule 23.09.2010
comment
Что ж, я надеюсь, что даже пользователи без установленного плагина SL смогут без проблем перейти на страницу входа / регистрации. - person Matt; 23.09.2010

вы также можете рассмотреть возможность разделения его на несколько приложений (xaps). Но вам нужно будет побеспокоиться об обмене данными между приложениями, что не должно быть большой проблемой, если вам доступно изолированное хранилище.

person Vinay B R    schedule 23.09.2010

Вам следует тщательно настроить страницу HTML-хостинга, чтобы не отпугнуть потенциальных клиентов. Отключите Javascript, чтобы увидеть то, что они видят:

  • Никогда не используйте страницу / изображение по умолчанию «Silverlight отсутствует ... загрузить».
  • Покажите HTML-страницу с внешним видом / стилем, аналогичным вашему реальному приложению Silverlight.
  • Покажите примеры того, чего им не хватает, с помощью изображений, текста предложения и т. Д.
  • Дублируйте базовую функциональность на своем веб-сайте (см. Ниже).

Любому веб-сайту Silverlight, который хочет использовать SEO, необходим сайт ASP.Net, поддерживающий его (для предоставления страниц с индексируемым содержимым поисковым системам), поэтому вы также можете добавить немного больше к этому сайту ASP.Net, который дублирует первоначальную функциональность Приложение Silverlight (т.е. ваши страницы регистрации).

Поэтому вместо того, чтобы заменять учетную запись Silverlight, продублируйте ее на своем сайте ASP.Net. Затем, когда они зарегистрируются и прочитают, насколько хорош ваш сайт Silverlight, вы с большей вероятностью побудите их загрузить SL. Если вы пользуетесь услугами RIA, Asp.net также использует их, поэтому вы можете совместно использовать множество функций между вашим веб-сайтом и приложением.

По поводу загрузки 1.5Мб. Как предполагает AnthonyWJones .... это плохо. Если возможно, вы хотите, чтобы ваша начальная загрузка Silverlight была меньше нескольких 100 КБ. Интернет-пользователи ожидают увидеть что-то в течение нескольких секунд, иначе они уйдут. Это возможно с использованием модульных методов загрузки, таких как MEF или Prism (который теперь включает поддержку MEF). У нас есть приложение Prism Silverlight размером 20 МБ (42+ модуля), но начальная нагрузка составляет менее 500 КБ (и мы планируем уменьшить ее до менее 100 КБ).

person Gone Coding    schedule 23.09.2010