2010-05-10 12 views
5

La domanda che sto ponendo è soggettiva. Ne ho visti due volte mentre mi esercitavo con progetti reali come StoreFront, sia Repository che Services. A volte possono essere solo cartelle o progetti collegati alla soluzione. Ma contengono classi e interfacce.ASP.NET MVC: Qual è la differenza di concetto tra Servizio e Deposito

Quindi mi piacerebbe sapere cosa va al repository e cosa va ai servizi. Finora, avevo familiarità con i repository (abbiamo messo metodi e proprietà nel repository per ridurre la complessità del controller). E i servizi?

Quindi, ASP.NET MVC: qual è la differenza di concetto tra Servizio e Deposito? (Forse nessuno)

La mia domanda è soggettiva, ma mi piacerebbe essere sicuro che non mi manchi niente.

Grazie per aiutare

risposta

10

Generalmente, il repository fornisce semplicemente un'interfaccia per dati. Non c'è nessuna logica applicativa lì. I servizi forniscono interfacce alla logica dell'applicazione. I servizi utilizzano spesso repository.

+0

Cabansky: Ci scusiamo per chiedertelo. I servizi utilizzano il repository per ciò che ... – Richard77

+1

@ Richard77: i servizi utilizzano i repository per l'accesso ai dati. L'unico scopo del repository è nascondere i dettagli dell'accesso ai dati. Ad esempio, la mia attuale applicazione ha uno ShipmentNotificationService che racchiude tutta la logica necessaria per inviare il numero di tracciamento e le informazioni sul costo di spedizione ai sistemi front-end con i quali ci interfacciamo. Usa diversi repository per accedere al database. –

+0

@ Richard77: vai su Sharp Architecture (http://sharparchitecture.net/) per alcune indicazioni pratiche sotto forma di un'applicazione di esempio. Fanno davvero un buon lavoro nel separare controller, repository e servizi per ASP.NET MVC. Puoi usare Sharp Architecture come base del tuo progetto se vuoi provare anche un ORM. –

Problemi correlati