我正在我的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-application
我喜欢为所有实体使用一个存储库的想法。 我正在努力实现一个泛型方法来为我的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??
答案 0 :(得分:0)
你可以尝试做那样的事情
People = unitOfWork.Repository.GetSelectListName (e => new SelectListItem({Text= string.Format("{0} {1})", e.LName, e.FName), Value=e.PersonID});