J'ai une classe de base du référentiel qui est appelé de mes contrôleurs dans mon application mvcLinq 2 SQL - Une meilleure façon de le faire
Chaque contrôleur, il obtient propre référentiel
comme celui-ci
public class ServiceRepository : Bluegrass.Mvc.RepositoryBase<Models.Service>
{
public ServiceRepository()
{
this._db = new iSppms.Models.iSppmsDataContext();
}
}
Et comme se habituera
internal DataAccess.ServiceRepository repository =
new iSppms.DataAccess.ServiceRepository();
public ActionResult Index()
{
var viewData = new ViewData.ServiceIndexViewData(
repository.GetItems<Models.Service>());
return View(viewData);
}
Là où je suis désireux de faire est de ne pas avoir passer le modèle à travers comme RepositoryBase déjà de type Models.Service
Je suis à la recherche d'une meilleure façon de structurer ce sujet.
public class RepositoryBase<T> where T : class
{
public DataContext _db;
public List<T> GetItems<T>() where T : class, Interfaces.IModel
{
var table = _db.GetTable<T>();
var data = table.Where(t => !t.Deleted);
return data.ToList();
}