如何在c# Automapper中忽略空值



我在c#中使用Automapper

目前我正在尝试使用下面的代码映射。

CreateMap<Student, StudentDto>()
.ForMember(dest => dest.FeeType, opt =>
{
opt.PreCondition(src => (src.Key == "Paid"));
opt.MapFrom(src => src.Value);
});

我想映射只有当键==支付,否则它不应该映射。然而,在本例中,它只是传递null。

那么让我们说,如果集合有100条记录,只有1条符合条件,其他99条记录作为NULL传递。

编辑-我正在使用Azure功能应用程序和我的Automapper版本是10.0.0

请建议。

我认为你必须更新你的ConfigureServiceslike=>

public void ConfigureServices(IServiceCollection services) {  
// Auto Mapper Configurations  
var mappingConfig = new MapperConfiguration(mc => {  
mc.AddProfile(new MappingProfile());  
});  
IMapper mapper = mappingConfig.CreateMapper();  
services.AddSingleton(mapper); 
//This line should be updated
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1).AddJsonOptions(options => options.SerializerSettings.NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore);  
}  

Newtonsoft.Json.NullValueHandling.Ignore.AddJsonOptions(options => options.SerializerSettings.NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore);,它将处理你所要求的。
注意:请查看文档链接。我相信它会起作用的。


联系

相关内容

  • 没有找到相关文章

最新更新