我正在我的 MVC 项目中实现通用存储库模式,并且正在关注本教程。 http://www.asp.net/mvc/tutorials/getting-started-with-ef-5-using-mvc-4/implementing-the-repository-and-unit-of-work-patterns-in-an- asp-net-mvc-应用程序
我喜欢为所有实体使用一个存储库的想法。我正在努力实现一个通用方法来为我的 ListBoxFor 返回一个 SelectListItem。
这是我在存储库中的方法。
public virtual IEnumerable<SelectListItem> GetSelectListName(Expression<Func<TEntity, SelectListItem>> select)
{
IQueryable<TEntity> query = dbSet;
return query.Select(select);
//return dbSet.ToList().Select(s => new SelectListItem
//{
// Text = s.LName + ", " + s.FName,
// Value = s.PersonID.ToString()
//});
}
如您所见,我想将人的名字和姓氏连接起来。我在这一点上很挣扎,因为我不确定这是否是最好的方法。
People = unitOfWork.Repository.GetSelectListName(e => e.LName);//not sure here??