在上一篇文章中【C# NetCore AutoMapper 忽略映射属性】,在创建映射时,我添加了FormMember方法,以便在进行映射时忽略Name属性。如果查看输出窗口,可以看到Name的值为空,即使源实例中的属性中有值。
如果我们想忽略大量自动映射的属性,这将是一个繁琐的过程。因此,如果遇到这种情况,请考虑创建一个类似下面的扩展类,它会忽略基于模型中指定的数据属性的属性。
完整示例:
using System;
using AutoMapper;
using System.ComponentModel;
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
[NoMap]
public string Address { get; set; }
[NoMap]
public string Email { get; set; }
}
public class PersonVM
{
public string Name { get; set; }
public int Age { get; set; }
public string Address { get; set; }
public string Email { get; set; }
}
public class NoMapAttribute : System.Attribute
{
}
public static class IgnoreNoMapExtensions
{
public static IMappingExpressio
|