0

我正在我的 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??
4

1 回答 1

0

你可以试着做一些这样的想法

People = unitOfWork.Repository.GetSelectListName (e => new SelectListItem({Text= string.Format("{0} {1})", e.LName, e.FName), Value=e.PersonID});
于 2014-02-13T23:06:11.383 回答