2012-05-23 5 views
9

Per un progetto corrente, sto cercando di capire come utilizzare in modo efficace Knockout 2.1.0, Upshot 1.0.0.2, ASP.NET MVC4 e Entity Framework 4.3. Ci sono molte domande architettoniche di base che non sembrano avere risposte pronte. Sto enumerando molte delle mie domande (in post separati) nella speranza che qualcuno possa fornire una guida ragionevole per me stesso e gli altri mentre tentiamo di implementare questa combinazione in applicazioni del mondo reale.Best practice architetturali Upshot/Knockout - Qual è il provider preferito da utilizzare nella comunicazione tra Upshot e .NET?

In Presentazione straordinaria di Steve Sanderson su Knockout e Upshot.js a TechDays Paesi Bassi nel mese di febbraio, ha menzionato Upshot in grado di gestire più metodi di connessione a un server. (Se non hai visto la presentazione, vale la pena guardare un orologio.)

Sfortunatamente, non ha avuto il .

Secondo Denver Developer nel suo blog dal titolo “Scavando nel Upshot.js” (http://denverdeveloper.wordpress.com/2012/03/07/digging-into-upshot-js/), ci sono tre fornitori di dati esposti da Upshot.js. Questi sono:

• il valore di default è FornitoreDati() e utilizza il metodo/Invia e l'operazione si fornisce a ottenere i dati utilizzando $ .ajax il metodo di jQuery. (Ag. Nota: Credo che questo si collega in genere con DbDataController oggetti esposti da WebAPI ma sono sicuro del proprio ciò che le limitazioni sono)

• il successivo è riaDataProvider() - simile alla prima, ma si utilizza il metodo/jSON/SubmitChanges e/jSON/{tua opertion} per ottenere dati

• infine abbiamo anche odataDataProvider() - questo è molto diverso, perché attualmente non supporta i dati di aggiornamento - è sola lettura.

Un numero di domande strettamente correlate si presenta naturalmente per quanto riguarda la selezione di un fornitore per l'uso tipico.

  • Quale fornitore di dati è migliore: il provider di dati predefinito o il fornitore di dati RIA?
  • Quale si consiglia per l'uso normale e in quali circostanze?
  • Quali sono le implicazioni in termini di prestazioni dell'utilizzo del normale DataProvider rispetto allo riaDataProvider?

Su una nota correlata, sembra che ci sia molta poca documentazione su upshot su Internet. Oltre a sforzarsi attraverso le oltre 4700 linee di codice in upshot.js, ci sono altre fonti di documentazione decenti per questa libreria?

Le risorse che ho visto finora includono quanto segue (più alcune altre).

risposta

-1

Quale provider da utilizzare dipende dal tipo di servizio dati sul lato server. Nella mia pratica sono:

  1. Servizio RIA WCF + upshot (con riaDataProvider) + knockout.
  2. API Web ASP.NET + upshot (con dataProvider) + knockout. (entrambi faranno un buon lavoro per voi!)
  3. Servizio dati WCF + upshot (con oDataProvider) + knockout. (Lettura dei dati solo ora)
    Per il servizio lato server odata, "JayData" è una buona opzione
+0

Grazie per la risposta, ma credo che abbia semplicemente riassunto le informazioni fornite nella mia domanda. –

12

Si dovrebbe evitare l'uso di risultato e utilizzare http://www.breezejs.com/ invece

ASP.Net MVC tabella di marcia (si noti che risultato non è in fase di sviluppo ulteriore): http://aspnetwebstack.codeplex.com/wikipage?title=Roadmap

tenere d'occhio sulla tabella di marcia, più il blog di John Papa (http://www.johnpapa.net/building-single-page-apps-with-knockout-jquery-and-web-api-ndash-the-story-begins) - che dovrebbe tenere voi sulla strada giusta

Aggiornamento: Ho appena iniziato a suonare in giro con un asciugamano caldo - ruoli Breeze, Durandal.js Knockout.js e Twitter Bootstrap (tra gli altri) in un bel modello ... la sua cercando piuttosto fresco finora

https://github.com/johnpapa/HotTowel

+0

Grazie per il suggerimento su HotTowel, sembra molto interessante. – angularsen