【发布时间】:2020-01-20 10:31:05
【问题描述】:
public class TestNullableString {
public string? Test;
public TestNullableString(string? test) {
Test = test;
}
}
public class TestNonNullableString {
public string Test;
}
public class TestProfile : Profile
{
public TestProfile() {
CreateMap<TestNonNullableString, TestNullableString>
.ForMember(dest => dest.Test, opt => {
opt.AllowNull();
opt.MapFrom(src => src.Test == "" ? null : src.Test);
});
}
}
如果我尝试从 NonNullableString 映射到 NullableString,它仍然会在映射时为我提供空字符串。它不会给我一个空值,即使 NonNullableString 是“”。我做错了什么?
我正在使用 AutoMapper 9.0.0。
PS。我也尝试将 AllowNullDestinationValues 设置为 true,但没有成功。
【问题讨论】:
-
我意识到我复制的代码太少了。我现在已经在 TestNullableString 中添加了构造函数,这现在不适用于您建议的解决方案。
标签: c# .net .net-core automapper