簡體   English   中英

填充對象列表(使用Linq?)

[英]Populate a list of Objects (With Linq?)

我想知道是否有更好的方法來做到以下幾點,

    IList<RoleViewModel> ReturnViewModel = new List<RoleViewModel>();

    IList<Role> AllRoles = PermServ.GetAllRoles();

    foreach (var CurRole in AllRoles)
    {
        ReturnViewModel.Add(new RoleViewModel(CurRole));
    }

它非常簡單的代碼只需獲取數據對象並將其轉換為ViewModel。 我想知道是否有辦法更好地做到這一點? - 也許和Linq一起?

從頭頂(不是開發機器)。

IList<RoleViewModel> returnViewModel = PermServ.GetAllRoles()
                                        .Select(x => new RoleViewModel(x))
                                        .ToList();
var returnViewModel  = (from n in PermServ.GetAllRoles()
                       select new RoleViewModel(n)).ToList();

另一個選擇是使用AutoMapper處理您的轉換。

Mapper.CreateMap<Role, RoleModel>();
IList<RoleViewModel> returnViewModel = 
   Mapper.Map<IList<Role>, IList<RoleViewModel>>(PermServ.GetAllRoles());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM