2012-05-23 11 views
9

Para un proyecto actual, estoy tratando de tener una idea de cómo utilizar efectivamente Knockout 2.1.0, Upshot 1.0.0.2, ASP.NET MVC4 y Entity Framework 4.3. Hay muchas preguntas básicas de arquitectura que no parecen tener respuestas listas. Estoy enumerando varias de mis preguntas (en publicaciones separadas) con la esperanza de que alguien pueda proporcionar una guía razonable para mí y para otros mientras intentamos implementar esta combinación en aplicaciones del mundo real.Mejores prácticas arquitectónicas de eliminación/eliminación: ¿Cuál es el proveedor preferido para usar en la comunicación entre Upshot y .NET?

En presentación impresionante de Steve Sanderson en Knockout y Upshot.js en TechDays Holanda en febrero, mencionó Upshot puede acomodar múltiples métodos de conexión a un servidor. (Si no ha visto la presentación, vale la pena verla. Puede verla en http://channel9.msdn.com/Events/TechDays/Techdays-2012-the-Netherlands/2159.)

Desafortunadamente, no tuvo tiempo para detallar cuáles son esos mecanismos de comunicación o cuáles se recomendaron y en qué circunstancias .

Según Denver desarrollador en su post titulado “Excavando en Upshot.js” (http://denverdeveloper.wordpress.com/2012/03/07/digging-into-upshot-js/), hay tres proveedores de datos expuestos por Upshot.js. Estos son:

• El valor predeterminado es DataProvider() y utiliza el método/Enviar y la operación que proporcione para obtener datos utilizando el método $ .ajax de jQuery. (Ag. Nota: Creo que esto se conecta generalmente con DbDataController objetos expuestos por WebAPI, pero estoy seguro de exactamente cuáles son las limitaciones)

• la siguiente es riaDataProvider() - similar a la primera, pero que utiliza el JSON/método/SubmitChanges y/JSON/{su funcionamiento!} para obtener datos

• Por último también tenemos odataDataProvider() - éste es muy diferente, ya que no es compatible actualmente con los datos de actualización - es solo lectura.

Numerosas preguntas estrechamente relacionadas se presentan naturalmente con respecto a la selección de un proveedor para el uso típico.

  • ¿Qué proveedor de datos es mejor: el proveedor de datos predeterminado o el proveedor de datos RIA?
  • ¿Cuál se recomienda para uso normal y en qué circunstancias?
  • ¿Cuáles son las implicaciones de rendimiento del uso del DataProvider normal frente al riaDataProvider?

En una nota relacionada, parece que hay muy poca documentación sobre el resultado en Internet. Además de recorrer las más de 4700 líneas de código en upshot.js, ¿hay alguna otra fuente de documentación decente para esta biblioteca?

Los recursos que he analizado hasta ahora incluyen los siguientes (más algunos más).

Respuesta

-1

Qué proveedor utilizar depende de su tipo de servicio de datos del lado del servidor. En mi práctica son:

  1. WCF RIA service + upshot (with riaDataProvider) + knockout.
  2. ASP.NET WEB API + resultado (con dataProvider) + knockout. (¡Ambos harán un buen trabajo para usted!)
  3. WCF data Service + upshot (with oDataProvider) + knockout. (Leer datos sólo ahora)
    Para el servicio del lado del servidor oData, "JayData" es una buena opción
+0

Gracias por su respuesta, pero creo que simplemente resumió la información que proporcioné en mi pregunta. –

12

Debe evitar el uso resultado y utilizar en su lugar http://www.breezejs.com/

ASP.Net MVC Hoja de Ruta (tenga en cuenta que no es resultado siendo desarrollada): http://aspnetwebstack.codeplex.com/wikipage?title=Roadmap

mantener un ojo en la hoja de ruta, más el blog de John Papa (http://www.johnpapa.net/building-single-page-apps-with-knockout-jquery-and-web-api-ndash-the-story-begins) - que debe mantener que en el camino correcto

Actualización: Me acaba de empezar a jugar con una toalla caliente - papeles Breeze, Durandal.js Knockout.js y Twitter Bootstrap (entre otros) en una plantilla muy agradable ... es mirar muy bien hasta ahora

https://github.com/johnpapa/HotTowel

+0

Gracias por el consejo sobre HotTowel, se ve muy interesante. – angularsen

Cuestiones relacionadas