Tôi đang sử dụng Automapper để sao chép giá trị từ phiên bản này sang thể hiện khác và tôi thấy rằng nếu lớp có thuộc tính mảng và thể hiện nguồn đã thuộc tính được đặt thành null
, Automapper đặt thuộc tính đích thành mảng không có độ dài thay vì null
như tôi mong đợi.Automapper đặt thuộc tính mảng thành mảng không độ dài thay vì null
Có cách nào để định cấu hình Automapper để đặt đích đến null
khi nguồn là null
không?
Trong trường hợp giải thích của tôi là không rõ ràng, đoạn code sau minh họa những gì tôi đang cố gắng để mô tả:
public class Test
{
public byte[] ByteArray { get; set; }
public int? NullableInt { get; set; }
public int Int { get; set; }
}
class Program
{
static void Main(string[] args)
{
Mapper.CreateMap<Test, Test>();
var test1 = new Test { Int = 123, NullableInt = null, ByteArray = null };
var test2 = Mapper.Map<Test>(test1);
// test1: Int == 123, NullableInt == null, ByteArray == null
// test2: Int == 123, NullableInt == null, ByteArray == byte[0] <-- expect this to be null
}
}
Cảm ơn bạn đã cập nhật! – hB0
Nó dường như không hoạt động ở cấp độ toàn cầu. – DonO