2009-12-16 13 views
5

La tecnología Silverlight Out of Browser y WPF ClickOnce en la superficie tienen similitudes. Implementación fácil y sencilla, la capacidad de especificar el nivel de acceso de confianza al host subyacente, etc.Silverlight OOB frente a WPF ClickOnce

¿Cuáles son los problemas clave que debo tener en cuenta al elegir uno sobre el otro?

Para poner un punto más fino, voy a implementar aplicaciones LOB en una red corporativa que solo ejecute las computadoras con Windows.

Respuesta

1

Ha mencionado el acceso de confianza al host, lo que creo que excluye a Silverlight a menos que desee ejecutar SL4 (beta).

Recientemente hemos debatido mucho sobre el acceso al sistema de archivos. Silverlight 3 se ejecuta en un entorno limitado de confianza parcial más o menos. No puede mantener un puntero a los archivos en el sistema de archivos fuera del almacenamiento aislado de su aplicación. Este fue un problema para nosotros, ya que queríamos que el usuario pudiera usar la aplicación para hacer referencia a las ventajas y desventajas en su sistema de archivos. Dicho esto, puede permitir que los usuarios carguen y guarden archivos desde cualquier lugar del sistema, pero solo obtiene/o empuja la secuencia de archivos y (a mi leal saber y entender) no tiene acceso a la carpeta ni a la información de ruta del archivo.

Silverlight 4 (en beta) tiene soporte para su aplicación ejecutándose en modo de confianza total. Sin embargo, todavía no he jugado con esto y no puedo hablar de qué tan bien funciona.

+0

Escuché una charla de Shawn Wildermuth en la que dijo que Silverlight 4 puede ejecutarse en "Elevated Trust", que es diferente de la confianza total. Creo que muchos de los escenarios de almacenamiento de archivos que mencionaste anteriormente se seguirán aplicando en SL4, pero como tú, aún no jugué con él y no puedo confirmarlo. –

3

El principal es la compatibilidad multiplataforma. Si necesita que su aplicación se ejecute tanto en mac como en Windows (no estoy seguro de si Silverlight aún es compatible con Linux), utilice Silverligt. Si desea suponer que todos sus usuarios estarán en una máquina de Windows, entonces vaya a WPF.

Obviamente, WPF tiene un juego de herramientas mucho más rico que Silverlight por lo que bien podría ser que Silverlight simplemente no es una opción. Si solo estaba construyendo para Windows, sé que mi trabajo sería más fácil en WPF.

+0

"Obviamente, WPF tiene un juego de herramientas mucho más rico que Silverlight": a partir de 2011, este ya no es el caso. – MalcomTucker

+0

SilverLight es compatible con Linux por el Proyecto Mono, llamado MoonLight. – Pieces

3

dado que usted está apuntan a una infraestructura privada que ejecuta Windows, dos puntos vale la pena pensar

  • Wpf tiene un árbol de control más rica, mientras que Silverlight es un conjunto reducido de tamaño compacto
  • Wpf requiere .Net Framework instalado localmente, mientras que Silverlight tiene su propia plataforma independiente basada en el motor de ejecución

Si bien es probable que su plataforma objetivo tenga el último .Net Framework instalado, haciendo que este último punto sea discutible, mantenga en mi nd any updates to el marco [es decir .Net4.0 y cualquier actualización futura] puede requerir un reinicio de la máquina, que es un punto importante para las empresas que demandan equipos de escritorio con estado constante [es decir, cualquier cosa en finanzas, como bancos y comercio].


Como con todos los problemas, sus requisitos, no la tecnología, deben informar su solución. :)

1

Al hablar con muchas personas que trabajan tanto con Silverlight como con WPF, incluso con aquellos que están entusiasmados con Silverlight y lo presionan con fuerza, oigo decir bastante enfáticamente que si usted va a desarrollar exclusivamente para un entorno de Windows de plena confianza, WPF es la elección obvia.

Eso no quiere decir que Silverlight sea un producto inferior o que no haya ocasiones en las que Silverlight sea el claro ganador.Pero cuando dices "voy a implementar aplicaciones LOB en una red corporativa que solo ejecuta computadoras con Windows", parece que WPF es el ganador claro.

Usted podría Decidir ir por la ruta de Silverlight en previsión de todos los grandes OOB nueva función os SL4. Incluso he escuchado rumores de que SL y WPF finalmente se fusionarán, por lo que tal vez ni siquiera importe, ¿no? Bueno, creo que lo que encontrarás si decides utilizar Silverlight es que algunas de las funciones avanzadas que pensabas que estaban allí no estaban en la forma que esperabas. Por ejemplo, SL4 podrá ejecutarse en "Confianza elevada" (no de plena confianza) y es posible que encuentre esta limitación en un punto frustrante del proyecto donde gran parte de su código base ya se encuentra en Silverlight.

Ciertamente, mantenga sus ojos en Silverlight, pero para su caso de negocios actual, WPF probablemente sea la mejor opción.

Cuestiones relacionadas