Trucuri C # Reducerea controlerelor; CodepediaOrg
15 noiembrie 2014
(P) Marcaje.dev - Marcaje open source și Manager de fragmente de cod pentru dezvoltatori & Co. Consultați ghidurile noastre Cum să vă ajute să începeți. Repoare marcaje publice pe Github - Star

Această postare de blog este dedicată colegei mele Seminda, care a experimentat cum să creeze aplicații web simple și puternice. Mulțumesc că mi-ai arătat ideile tale și ai discutat cu mine despre îmbunătățiri, Seminda.
Am găsit că multe aplicații C # au cod mult inutil. Acest lucru este valabil mai ales, deoarece ponderea logicii de afaceri a multor aplicații se schimbă de la backend la cod JavaScript în paginile web. Când sarcina aplicației dvs. este de a furniza date către un front-end, este important să le mențineți subțiri.
În acest articol, mi-am propus să simplific un controler API MVC 4 standard generalizând funcționalitatea, centralizând gestionarea excepțiilor și adăugând metode de extensie la setul de baze de date care este folosit pentru preluarea datelor mele.
Dacă generați un controler API bazat pe o entitate existentă și eliminați o parte din zgomot, codul dvs. ar putea arăta astfel:
Acest cod este o versiune simplificată a ceea ce vă va oferi expertul API 4 Controller. Include o metodă GetPerson care returnează o persoană prin Id, PostPerson care salvează o persoană nouă, GetPeople care returnează toate persoanele din baza de date, GetAdminsInCity, care filtrează oamenii pe oraș și tip și DeletePerson care găsește persoana cu ID-ul specificat și îl șterge.
Am înlocuit DbContext și IDbSet cu interfețe în loc de subclasa concretă a DbContext facilitează crearea de teste care utilizează o dublă pentru baza de date, de exemplu MockDbSet.