У меня есть хранилище базовый класс, который вызывается из моих контроллеров в моей MVC приложенияLinq 2 SQL - лучший способ сделать это
Каждый контроллер получает его собственный репозиторий
как это
public class ServiceRepository : Bluegrass.Mvc.RepositoryBase<Models.Service>
{
public ServiceRepository()
{
this._db = new iSppms.Models.iSppmsDataContext();
}
}
И привыкает как
internal DataAccess.ServiceRepository repository =
new iSppms.DataAccess.ServiceRepository();
public ActionResult Index()
{
var viewData = new ViewData.ServiceIndexViewData(
repository.GetItems<Models.Service>());
return View(viewData);
}
Где я хочу сделать это не нужно передайте модель, поскольку RepositoryBase уже имеет тип Models.Service
Я ищу лучший способ структурировать это.
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();
}