public class User
{
private const int NameMaxLength = 20;
private const int PassWordMaxLength = 16;
[Key]
public long Id { get; }
[MaxLength(NameMaxLength)]
public string Name { get; set; }
[MaxLength(PassWordMaxLength)]
[DataType(DataType.Password)]
public string PassWord { get; set; }
}
public class UserDto
{
private const int NameMaxLength = 20;
private const int PassWordMaxLength = 16;
[MaxLength(NameMaxLength)]
public string Name { get; set; }
[MaxLength(PassWordMaxLength)]
public string PassWord { get; set; }
}
user.Name=userDto.Name; user.PassWord=UserDto.PassWord;
Install-Package AutoMapper
public void Using_Initlalize_Test()
{
UserDto dto = new UserDto
{
Name = "Niko",
PassWord = "1234",
};
Mapper.Initialize(ctx => ctx.CreateMap<UserDto, User>());
User user = Mapper.Map<UserDto, User>(dto);
user.Name.ShouldBe("Niko");
user.PassWord.ShouldBe("1234");
user.Id.ToString().ShouldBe("0");
}
public void Using_MapperConfiguration_Test()
{
var config = new MapperConfiguration(ctx => ctx.CreateMap<UserDto, User>());
var mapper = config.CreateMapper();
// var mapper = new Mapper(config);
UserDto dto = new UserDto
{
Name = "Niko",
PassWord = "1234",
};
User user = mapper.Map<User>(dto);
//User user = Mapper.Map<User>(dto);
user.Name.ShouldBe("Niko");
user.PassWord.ShouldBe("1234");
user.Id.ToString().ShouldBe("0");
}
Mapper.AssertConfigurationIsValid();
public static class AutoMapperExtension
{
/// <summary>
/// 对象到对象
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="obj"></param>
/// <returns></returns>
public static T MapTo<T>(this object obj)
{
if (obj == null) return default(T);
Mapper.Initialize(ctx=>ctx.CreateMap(obj.GetType(),typeof(T)));
return Mapper.Map<T>(obj);
}
/// <summary>
/// 集合到集合
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="obj"></param>
/// <returns></returns>
public static List<T> MapTo<T>(this IEnumerable obj )
{
if (obj == null) throw new ArgumentNullException();
Mapper.Initialize(ctx => ctx.CreateMap ( obj.GetType(), typeof(T))) ;
return Mapper.Map<List<T>>(obj);
}
}
public void testme()
{
UserDto dto = new UserDto
{
Name = "Niko",
PassWord = "1234",
};
User user=dto.MapTo<User>();
user.Name.ShouldBe("Niko");
user.PassWord.ShouldBe("1234");
user.Id.ToString().ShouldBe("0");
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有