2008-09-11 25 views
10

Necesitamos construir un sitio web de portal de administración para admitir nuestra aplicación cliente/servidor. Como somos una tienda .Net, la forma tradicional más obvia sería hacerlo en ASP.Net. Pero Silverlight 2 saldrá de la versión beta un buen tiempo antes de nuestra fecha de lanzamiento. ¿Deberíamos considerar construir todo el sitio web en Silverlight en su lugar, con un backend WCF de apoyo?¿Utilizas Silverlight para un sitio web completo?

La función principal del portal será: usuarios, grupos y configuración de permisos; configuración de configuraciones de perfil de usuario; carga y descarga de archivos necesarios para admitir la aplicación.

Creo que la razón principal para tomar este enfoque sería que tenemos una buena experiencia con WPF y WCF, pero poca experiencia en ASP.Net. De cualquier manera, tendríamos que aprender ASP.Net o Silverlight, y aprender Silverlight parece una extensión más natural de nuestras habilidades actuales.

¿Hay algún gran no-nos de la experiencia de StackOverflowers? ¿Cuáles son los grandes aspectos positivos?

Respuesta

9

Depende de tus objetivos. Si el portal de administración es parte de la aplicación y solo se utilizará desde las computadoras donde está instalada su aplicación, existen muchas ventajas de utilizar Silverlight completamente - o incluso WPF.

Pero si puede ver un escenario en el que se utilizará desde una PC aleatoria o por una persona aleatoria, la versión completamente funcional de HTML/Javascript es absolutamente necesaria.

Algunas de las razones son:

  • La mayoría de la gente no tiene Silverlight y usted ganará una buena carga de jurar si tienen que descargarlo e instalarlo. Algunas personas que lo tienen instalado lo mantienen inhabilitado (junto con flash e incluso a veces imágenes) para evitar distracciones y acelerar la navegación.
  • Cuando el sitio HTML falla, el usuario obtiene la página de error y vuelve a cargar. Cuando Silverlight falla, puede bloquearse o bloquearse.
  • HTML es lo que se espera, tanto de los usuarios como de los navegadores web: los botones de retroceso y actualización funcionan como deberían, los hipervínculos y formularios funcionan como se esperaba.
  • Internet lento sigue siendo muy común, tanto en áreas remotas como en dispositivos móviles.
1

ASP todo el camino. Solo debe usar Silverlight/flash, etc. cuando el texto no puede hacer lo que usted desea, p. Ej. mostrar video

+1

Iain, ¿Por qué? En mi opinión, Silverlight tiene un modelo de programación mucho mejor que HTML/JavaScript. ¿Por qué no debería usarlo? Eso es lo que trato de averiguar. –

+0

Creo que hay MUCHAS cosas que "el texto no puede hacer" además de mostrar videos. ASP todo el camino está equivocando a Sam, porque realmente depende. –

+0

@Sam La web es html. Html es texto. Los grumos binarios grandes y gruesos no son la mejor manera de renderizar texto. –

15

No recomendaría crear un sitio puro de Silverlight.

Silverlight sufre de los mismos problemas que Flash: marcadores indecentes, problemas con la impresión, problemas de accesibilidad, botones que no funcionan, etc.

Además, requerirá que sus usuarios tengan instalado Silverlight o al menos tengan la capacidad de instalarlo.

En entornos controlados (por ejemplo, en grandes empresas o centros de salud) o en dispositivos móviles, este podría no ser el caso.

0

Hay algunos downsides con el desarrollo de un sitio completamente en Flash/Silverlight, pero si esos inconvenientes no le importan o no tendrán un impacto, entonces no hay nada que lo detenga. Elija la herramienta que crea que satisfaga sus necesidades de forma más completa. No me desanimaría a crear un sitio exclusivamente en Silverlight basado en los inconvenientes, ya que aporta muchos más aspectos positivos a la experiencia del usuario.

5

Parece que su problema es que necesita una aplicación de administrador de cliente enriquecido. ¿Por qué no usar clic-una vez?

15

Definitivamente iré por una aplicación completa de Silverlight, especialmente si tienes buena experiencia de WPF. Podrá reutilizar su conocimiento de WPF, y debería poder recoger Silverlight con bastante rapidez. He estado trabajando con Silverlight desde la Beta 1, y la Beta 2 actual es de calidad sólida. Supongo que es seguro asumir que una versión de RTW está a la vuelta de la esquina.

Pilf tiene un punto válido, especialmente en torno a la impresión. Para eso, probablemente usaría SQL Reporting Services, u otro marco de trabajo de informes, en el servidor, y luego abriré una nueva ventana con informes imprimibles. Para vincular y marcar los problemas, los problemas no son diferentes de cualquier otra aplicación AJAX. Hice una publicación de blog hoy sobre how to provide deep linking and back-forward navigation in Silverlight.

Silverlight también tiene todos los ganchos necesarios para una gran compatibilidad de accesibilidad, ya que la UI Automation API de WPF se incorpora a Silverlight. No sé si los proveedores de lectores de pantalla ya se han puesto al día. El soporte de estilo/plantilla en Silverlight hace que sea fácil proporcionar máscaras de alto contraste para usuarios con discapacidad visual si eso es una preocupación.

+0

Jonas, Gracias por el enlace en la navegación hacia atrás: eso debería ser muy útil. –

0

Los comentarios anteriores se han ocupado de la mayoría de las desventajas del uso de Silverlight en un sitio como este y estoy de acuerdo. Si está decidido a desarrollar un estilo de cliente rico y su audiencia es pequeña (solo para administradores), entonces probablemente recomendaría WPF en lugar de Silverlight, ya que actualmente proporciona un conjunto más rico de herramientas y controles.

Si te quedas con ASP.NET has mirado datos dinámicos, es ideal para construir sitios de administración de back-end con poco esfuerzo.

7

Estoy de acuerdo con lo que todos han dicho hasta ahora y creo que este diagrama de flujo, que está dirigido a Flash, también se aplica a Silverlight.

enter image description here

Source of Image

+0

Dije lo mismo y me votaron a -2. Herejes. : '- ( –

+0

@IainMH Tal vez deberías haber dicho algo original? – GateKiller

0

que he visto "Silverlight única" en sitios web de Microsoft y son bastante impresionantes. Pero, una vez más, los demos estaban allí para explotar todo el potencial de lo que Silverlight puede hacer. En el momento en que necesite algo diferente, puede que no tenga suerte. No veo a Silverlight como Flash, excepto en la forma en que están instalados/vistos. Pero el motor de Flash/ActionScript es realmente malo comparado con lo que Visual Studio puede ofrecer con .NET

Pregúntese por qué le gustaría usar Silverlight? ¿Efectos de lujo o modelo de programación?

1

Usar un complemento para su sitio web lo hace lento y requiere que el usuario tenga el complemento instalado. Silverlight, por ejemplo, descarta todos los usuarios de Linux. Además, dado que Silverlight es bastante nuevo, no se sabe cuán comprometido estará Microsoft a mantener viva la plataforma si no se recupera pronto.

Me quedaría con el viejo HTML simple con secuencias de comandos del lado del servidor.

Además, para los sitios web públicos: Flash y Silverlight no pueden ser indexados por ningún motor de búsqueda, así que buena suerte con la escritura de toneladas de metadatos si quieres tener algún visitante.

+0

No estoy seguro de que quiera visitantes aleatorios ... es una aplicación administrativa. Además, aunque no era cierto cuando escribiste esto, Moonlight ya no está disponible para que los usuarios de Linux puedan ejecutar aplicaciones de Silverlight. –

1

Silverlight es una buena opción para un portal interno, como lo sería para un portal público si ya ha evaluado su proyecto y ha decidido seguir adelante con un portal web.Usted es libre de integrar los componentes de Silverlight dentro de una aplicación ASP.NET existente (es decir, las "islas de la riqueza"), pero si tiene la capacidad de crear un nuevo proyecto desde cero, no descarte una solución completamente Silverlight como válida. elección donde habría elegido un portal ASP.NET tradicional. Silverlight ahora cuenta con RTW, por lo que si esta decisión aún está sobre la mesa, usted sabe que no tendrá que lidiar con los cambios en el futuro.

3

Sobre el tema de los administradores remotos, otro aficionado declaró que era un argumento a favor de HTML si los administradores estaban en una conexión lenta. Yo argumentaría que dependiendo del tipo de información, puede ser más eficiente usar Silverlight. Si tiene una cuadrícula de datos ASP.NET poblada con enlace de datos del lado del servidor, puede descargar una gran cantidad de datos de marcado y de estado de visualización. Incluso si está utilizando una alternativa a DataGrid que es más clara en ViewState, aún tendrá mucho HTML para descargar.

En Silverlight, una vez que se baja el XAP, que probablemente sea más pequeño que el HTML correspondiente, el XAP se almacena en caché, por lo que no debería tener ese costo cada vez, y solo estará recuperando el datos en sí.

Para otro ejemplo, digamos que tiene un montón de listas desplegables en uno de sus formularios que tienen todos los mismos valores en la lista. En Silverlight, puede obtener estos valores una vez y vincularlos a todos los dorpdowns, en HTML tendrá que repetirlos cada vez.

Esto mejorará con el enlace de datos del lado del cliente en ASP.NET, que sigue un modelo muy similar al de Silverlight y WPF para el enlace de datos.

En general, también creo que necesitaría escribir menos código para la implementación de Silverlight que puede aumentar la productividad y reducir los costos de mantenimiento.

Cuestiones relacionadas