簡體   English   中英

AutoMapper:將模型中的IList映射到viewModel中的IEnumerable

[英]AutoMapper: Map IList in model to IEnumerable in viewModel

是否可以將Group中的IList映射到GroupViewModel中的IEnumerable?

模型

public class Group
{
    public string Name { get; set; }
    public virtual IList<Permission> Permissions
    {
        get { return _permissoes ?? (_permissions = new List<Permission>()); }
        set { Permissoes.Clear(); _permissions = value; }
    }
}

public class Permission
{
    public long Id { get; set; }
    public string Name { get; set; }
}

視圖模型

public class GroupViewModel
{
    public string Name { get; set; }
    public IEnumerable<PermissionViewModel> Permissions { get; set; }
}

public class PermissionViewModel
{
    public int Id { get; set; }
    public string Name { get; set; }
}

就那么簡單:

var grp = new Group {Permissions = new List<Permission>{new Permission{Name="Permission 1"}, 
                                                       {new Permission{Name="Permission 2"}}}};

Mapper.CreateMap<Permission, PermissionViewModel>();

Mapper.CreateMap<Group, GroupViewModel>();


var result = Mapper.Map<GroupViewModel>(grp);

暫無
暫無

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

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