6

Abbiamo esaminato attentamente le SPA utilizzando Breezejs per fornire il contesto di dati tra il client e il server. Le caratteristiche sembrano grandiose sul client, ma vogliamo usare il pattern Repository sul server e ottenere una buona separazione delle preoccupazioni senza dover ereditare da EFContextProvider che potrebbe causare problemi con IoC e possibilmente unità testing/mocking. Abbiamo seguito l'esempio di Camper del codice di John Papa su Pluralsight, che inizialmente prevedeva l'uso di un pattern Respository/UoW senza Breeze, il che ci ha portato a guardare il modello di Hot Towel che include Breeze.breezejs con un repository

Qualcuno sa come Breeze può essere estratto in un repository che mantiene il DbContext pulito (se si utilizza Entity Framework) incapsulato. Inoltre, cosa succede se non si utilizza Entity Framework e si preferisce utilizzare un altro ORM come ad esempio Iberian.

risposta

3

Grazie per aver postato qui come sono sicuro che altri chiederanno questo :)

Se non si utilizza EF, allora hai vinto; t ottenere la creazione di metadati automatico che fornisce Breeze. Puoi certamente astrarre il contesto EF in un Repo, e comunque ottenere i benefici.

Il modello ASP.NET SPA Breeze/Knockout mostra il repository scomposto. Credo che ci sia un campione per l'UoW da qualche parte - che mi sfugge dove. Ho chiesto alla gente di Breeze di indicare una risposta per questo.

Se si utilizza la nibibra non ci sono metadati automatici, tuttavia questa è una grande richiesta di funzionalità che potrei vedere per Breeze.

+0

Buona risposta, John. Stiamo lavorando per semplificare la generazione di metadati sul server per * qualsiasi * modello CLR. Dovrebbe essere in grado di descriverlo molto presto ... come in una settimana o due. – Ward

+0

Ho aggiunto un esempio semplice di "UoW/Repository e modello in progetto separato" al mio backlog. Per estrarlo rapidamente utilizzerà EF ... perché l'attenzione si concentra sulla separazione delle preoccupazioni, non sulla tecnologia di accesso ai dati di per sé. Il lettore dovrebbe essere in grado di scambiare EF a piacere una volta dimostrato (altrove) come creare metadati per qualsiasi modello. – Ward

+0

Consiglio vivamente i video di Scott Allen su repository e UOW nel corso [Pluralsight Design Patterns] (http: // pluralsight. com/training/courses/TableOfContents? courseName = patterns-library) ... forse l'esposizione più chiara e priva di espressioni gergali di questi pattern che abbia mai visto. – Ward

Problemi correlati