---
title: "IRepository i MVC applikation"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/184393-irepository-i-mvc-applikation"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "doggelito"
published: "2010-08-17T19:59:14.000Z"
updated: "2010-08-18T19:47:22.000Z"
replies: 3
views: 628
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/184393-irepository-i-mvc-applikation"
---

# IRepository i MVC applikation

## #1 — doggelito, 2010-08-17T19:59Z

Tja, 
Labbar mvc för fullt men har stött på en fundering.
Jag använder NHibernate i grunden för all databaskomunikation. Utanpå det har jag ett interface och ett generiskt repository med ett par vanliga metoder: Get\<T\>, Load\<T\>, Query\<T\> osv. 
Nu undrar jag:
Är det ok/smart att exponera detta interface direkt i en mvc control eller ska man gömma det bakom ett ex. ICategoryRepository som i sin tur bara har de metoder som rör entiteten Category? Ex. GetCategory(int categoryID), GetCategories() osv.

Man blir ju sugen att exponera IRepositoriet direkt eftersom jag då jag kan köra vilken typ av selectsats jag vill, när jag vill, hur jag vill, i alla controller. 

Vad har ni att säga om det?  :stud

Permalänk: https://www.webforum.nu/p/184393

## #2 — doggelito, 2010-08-17T20:18Z

Hmm, såg precis att ett interface kan ärva ett annat interface! Är det kanske det bästa av två världar tro?! :)
Då kan mitt ICategoryRepository ärva IRepository och därmed få tillgång till alla metoder som Repositoriet har. (detta för att CategoryRepository redan ärvde Repository sedan tidigare)

Permalänk: https://www.webforum.nu/p/2248847

## #3 — doggelito, 2010-08-17T20:29Z

Jag har typ exakt samma scenario som denna tråd:
<http://stackoverflow.com/questions/2927465/a-c-generics-question-involving-controllers-and-repositories> 
Det verkar alltså som om att det är ett ok sätt att hantera det hela på.

Permalänk: https://www.webforum.nu/p/2248851

## #4 — Compusa, 2010-08-18T19:47Z

Jag brukar implementera mina repositories på det viset. Att bara gå mot ett så kallat IRepository är inte så smart, eftersom det repositoryt är helt generellt och du då tappar styrkan med specialiserade repositorys. Risken är även att du får massa logik i dina kontroller (controllers), som egentligen borde ligga i dina repositories.

Du är på rätt väg med andra ord :)

Permalänk: https://www.webforum.nu/p/2248952

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/184393-irepository-i-mvc-applikation
