using System; using System.Collections.Generic; using System.Data.Entity; using System.Linq; using System.Web.Mvc; using EnVisage.Models; namespace EnVisage.Code.BLL { public class ExpenditureManager : ManagerBase { public ExpenditureManager(EnVisageEntities dbContext) : base(dbContext) { } protected override Expenditure InitInstance() { return new Expenditure { Id = Guid.NewGuid() }; } protected override Expenditure RetrieveReadOnlyById(Guid key) { return DataTable.AsNoTracking().FirstOrDefault(t => t.Id == key); } public override DbSet DataTable => DbContext.Expenditures; public IEnumerable GetExpenditures() { return DataTable.AsNoTracking() .OrderBy(e => e.Name) .Select(e => new SelectListItem { Value = e.Id.ToString(), Text = e.Name }).ToList(); } } }