67 lines
2.3 KiB
C#
67 lines
2.3 KiB
C#
using AutoMapper;
|
|
using NPlatform.AutoMap;
|
|
using BZPT.Domains.Entity;
|
|
using BZPT.Dto.VO;
|
|
using NPlatform.Result;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Text;
|
|
using System.Configuration;
|
|
using System.Reflection;
|
|
|
|
namespace BZPT.Domains
|
|
{
|
|
public class AutoMapperProfile : Profile, IProfile
|
|
{
|
|
/// <summary>
|
|
/// 配置可以互转的类
|
|
/// </summary>
|
|
public AutoMapperProfile()
|
|
{
|
|
////用户到VO对象的映射
|
|
//CreateMap<User, UserVO>()
|
|
// .ForMember(dst=>dst.Organization,src=>src.MapFrom(z=>z.Organization.Name))// 指定某个的属性从另一个对象的子属性获取(展平对象)
|
|
// .ForMember(dst => dst.RoleName, //目标字段
|
|
// src => src.MapFrom(z => GetRoleName(z.Roles))) //来源字段
|
|
// .ReverseMap();
|
|
//CreateMap<User, UserDto>().ReverseMap();
|
|
//CreateMap<Organization, OrganizationDto>()
|
|
// .ForMember(dst=>dst.Parents,src=>src.MapFrom(z=>z.Parents.Split(",", StringSplitOptions.RemoveEmptyEntries)))
|
|
// .ReverseMap();
|
|
|
|
//CreateMap<Organization, OrganizationDto>().ReverseMap();
|
|
|
|
//CreateMap<DictionaryDto, Dictionary>().ReverseMap();
|
|
}
|
|
|
|
//public string GetRoleName(List<Role> roles) {
|
|
// StringBuilder strRole = new StringBuilder();
|
|
// foreach (Role role in roles) {
|
|
// strRole.Append(role.Name);
|
|
// strRole.Append(",");
|
|
// }
|
|
// return strRole.ToString();
|
|
//}
|
|
/// <summary>
|
|
/// 字符串转时间类型
|
|
/// </summary>
|
|
public class DateTimeTypeConverter : ITypeConverter<string, DateTime>
|
|
{
|
|
public DateTime Convert(string source, DateTime destination, ResolutionContext context)
|
|
{
|
|
return System.Convert.ToDateTime(source);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 字符串转Type类型
|
|
/// </summary>
|
|
public class TypeTypeConverter : ITypeConverter<string, Type>
|
|
{
|
|
public Type Convert(string source, Type destination, ResolutionContext context)
|
|
{
|
|
return Assembly.GetEntryAssembly().GetType(source);
|
|
}
|
|
}
|
|
}
|
|
}
|