Pergunta

Estou interessado na criação de um site inteiramente em Silverlight (motivos pessoais), mas eu não quero que as pessoas que ainda não têm o Silverlight (um bom muitos) ter que instalar um plugin só para ver o meu site. A solução que eu estou inclinado para é começar com uma versão html flat / css do site e apresentar a versão do Silverlight apenas para pessoas que já têm instalado.

A minha pergunta é esta:

É o meu raciocínio equivocado. Existe uma maneira melhor de fazer isso. E qual é a melhor maneira de evitar ter de conteúdo duplicado em ambas as versões do site.

Foi útil?

Solução

Em primeiro lugar, proporcionando uma experiência de nível inferior para usuários sem Silverlight plugin é uma prática muito boa. Ele também irá proporcionar um melhor SEO para o seu site. Se você pode dar ao luxo de usar o Silverlight 3 e ASP.NET, em seguida, serviços .NET RIA é uma opção muito atraente para a reutilização de código em Silverlight e ASP .NET. serviços Ria e tutoriais estão disponíveis aqui:

http://code.msdn.microsoft.com/RiaServices

Outras dicas

Eu pessoalmente gosto de degradação suave para um web site. Quero Silverlight no meu site, mas eu vejo as pessoas no Twitter que vêm para um site Silverlight e dizer - nenhuma maneira eu vou instalar esse plug-in. Então, essas pessoas devem ser acomodados também.

Eu escrevi sobre Ilhas Silverlight, como implementar usando JQuery. Este método fornece material motor de pesquisa, ele fornece uma maneira para os amantes não-Silverlight para usar o site, e fornece uma maneira para que você possa desfrutar do seu web site como desejar.

Mas é muito mais trabalho. http://www.faxt.com/blog/post/2008/09/Show-Multiple-Silverlight-Controls-in-the-Same-Page-with-jQuery.aspx

Fazendo uma rápida pesquisa eu encontrei esta página que pode ser útil: http://www.adefwebserver.com/DotNetNukeHELP/Misc/Silverlight/ DetectSilverlight / Default.html Talvez usando esse método para detectar Silverlight você pode redirecionar os usuários com Silverlight para sua página Silverlight real e / ou redirecionar outros usuários para uma página html regular.

Confira unobtrusify.com, é para javascript discreto, mas o mesmo raciocínio mantém-se.

Além disso, confira o blog de Scott Guthrie em não ter o Silverlight instalado: weblogs.asp.net/scottgu/archive/2007/10/30/optimizing-the-silverlight-install-experience.aspx

Se você não deseja duplicar, eu diria que tem o código HTML em determinadas tags div e puxar aqueles em sua aplicação Silverlight, efetivamente usá-lo como uma camada de apresentação diferente. Você pode usar uma biblioteca JavaScript para exibir / ocultar que o HTML com base em se um usuário como o Silverlight instalado.

Depende do que você entende por "conteúdo".

Se por "conteúdo" quer dizer o código dirigindo o site, então você está indo para necessidade de escrever tudo duas vezes e eu não vejo nenhuma maneira de contornar isso.

Se por "conteúdo" você quer dizer o que o código está apresentando, em seguida, pode fazer algumas coisas para reduzir a duplicação. Se você armazenar seu conteúdo em um formato conhecido como XML, você pode usar XSLT no lado do HTML / CSS para transformar o XML em HTML para renderização. Em seguida, no lado do Silverlight também é possível analisar o XML e exibi-lo em qualquer formato desejado. Com essa técnica, você está apenas reescrever a estrutura para exibir o conteúdo.

Eu recomendaria leitura sobre Silverspine , uma técnica desenvolvida pela McCann para gerir este tipo de integração Silverlight / XHTML.

Michael

Bem, você poderia usar o Flash, em seguida, 99,9% de seus visitantes terão a plugin.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top