Repository pattern och Services, rätta ut mitt frågetecken.

Webbutveckling

1 svar · 738 visningar · startad av Fredde Mannen

Medlem sedan nov. 20014 054 inlägg
Trådstart#1

satt här och funderade lite grann på att börja hoppa in i ett nytt design mönster. Det pratas ganska mycket om repository pattern, så jag tänkte att det är en lämplig start.

Det jag suttit hittils med har varit uppbyggt på detta sett:

- Projekt.Data
* Managers / ProductManager.cs 
* Dal / Db.dbml (Linq to Sql)

- Projekt.Web.UI
* aspx-filer
* ascx-filer 
* etc.

- Projekt.Utils
* extensions för strings, integers, listor, validatorer osv.

Där en del i ascx-filen kan se ut som följer:

private void Addbtn_Click(object sender, EventArgs e) {

    ProductManager prodMan = new ProductManager();
    Product prod = new Data.Product();
    prod.Name = txtName.Text;
    
    prodMan.SaveOrUpdate(prod);

    //... 
}

Där manager-klassens SaveOrUpdate ändrar/lägger till data i databasen.

Hur sker UI's kommunikationen mellan Repositories, Services etc?

Är det:
repository <=> services <=> ui

el.

repository <=> ui och ibland repository <=> services <=> ui.

Har ni något bra exempel på nyttjande av repositorypattern med Linq To Sql och Linq To Entities?

Medlem sedan mars 20007 896 inlägg
#2

Tänk MVC, Model, View, Controller.

Model: Repository
View: UI
Controller: Förslagsvis dina Service-instanser

mvc-php.png
255 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)