将复杂的对象数据隔离到不同的对象

时间:2018-10-23 19:08:07

标签: c# automapper

有人可以在以下情况下帮助我吗?

我有一个下面的DTO模型,并希望根据条件将DTO转换为客户端模型。我不确定我是否做对了。

UserRoleInfo类:

public class UsersRoleInfo
{
    public int Id { get; set; }

    public string StaffNumber { get; set; }

    public bool IsActive { get; set; }

    public DateTime ActivatedOn { get; set; }

    public string FirstName { get; set; }

    public string LastName { get; set; }

    public int RoleId { get; set; }
}

角色配置:

public class RoleConfiguration
{
    public int Id { get; set; }

    public int RoleId { get; set; }

    public bool IsPasswordChecked { get; set; }

    public bool IsResetChecked { get; set; }

    public int ResetAfterDays { get; set; }

}

AssignRoleConfigurationDataModel:

public class AssignRoleConfigurationDataModel
{
    public List<RoleConfiguration> RoleConfigurationList { get; set; }

    public List<UsersRoleInfo> UserRoleInfoList { get; set; }
}

客户端模型:

public class RoleConfiguration
{
    public int Id { get; set; }

    public bool IsPasswordChecked { get; set; }

    public bool IsResetChecked { get; set; }

    public int ResetAfterDays { get; set; }

    public List<UsersRoleInfo> UserRoleDetails { get; set; }
}

UserRoleInfo客户端模型与上面的相同

AssignRoleConfiguration-用户界面模型

public class AssignRoleConfiguration
{
    public RoleConfiguration SuperAdministrator { get; set; }

    public RoleConfiguration PayManager { get; set; }

    public RoleConfiguration HelpDeskManager { get; set; }

    public RoleConfiguration HelpDeskAdministrator { get; set; }
}

我从数据库中获取的对象的类型为 AssignRoleConfigurationDataModel ,其中包含两个不同的列表。 一个列表将始终具有4个记录/项目,而另一个列表是usersinfo,它将更改。

在AssignRoleConfiguration下,SuperAdministrator对象应该具有有权以超级管理员身份访问的所有信息。

谢谢。

0 个答案:

没有答案