tôi đang cố gắng để lập bản đồ sử dụng AutomapperAutoMapper .For Lỗi biên dịch phương thức thành viên. tình trạng quá tải không hợp lệ
Đây là lập bản đồ hiện tại của tôi:
Mapper.CreateMap(Of NameAddress, PersonalDetails)() _
.ForMember(Function(dest) dest.Forenames, Function(opt) opt.MapFrom(Function(src) src.Forename)) _
.ForMember(Function(dest) dest.TelephoneNumber, Function(opt) opt.MapFrom(Function(src) src.TelephoneNo1)) _
.ForMember(Function(dest) dest.MobileNumber, Function(opt) opt.MapFrom(Function(src) src.MobilePhoneNo)) _
.ForMember(Function(dest) dest.NationalInsuranceNumber, Function(opt) opt.MapFrom(Function(src) src.NINo)) _
.ForMember(Function(dest) dest.DateOfBirth, Function(opt) opt.MapFrom(Function(src) src.BirthDate))
Vì vậy, từ một đối tượng nguồn NameAddress, tôi muốn để ánh xạ các đối tượng PersonalDetails đích. Phần còn lại của thuộc tính trên cả nguồn và đích đều giống nhau, do đó không xác định rõ ràng ánh xạ.
Tuy nhiên khi tôi cố gắng biên dịch bằng ánh xạ này, tôi nhận được lỗi thời gian biên dịch sau.
Overload resolution failed because no accessible 'ForMember' can be called with these arguments:
'Public Function ForMember(name As String, memberOptions As System.Action(Of AutoMapper.IMemberConfigurationExpression(Of Infrastructure.NameAddress))) As AutoMapper.IMappingExpression(Of Infrastructure.NameAddress, Core.TaxiLicensing.PersonalDetails)': Lambda expression cannot be converted to 'String' because 'String' is not a delegate type.
'Public Function ForMember(name As String, memberOptions As System.Action(Of AutoMapper.IMemberConfigurationExpression(Of Infrastructure.NameAddress))) As AutoMapper.IMappingExpression(Of Infrastructure.NameAddress, Core.TaxiLicensing.PersonalDetails)': Expression does not produce a value.
'Public Function ForMember(destinationMember As System.Linq.Expressions.Expression(Of System.Func(Of Core.TaxiLicensing.PersonalDetails, Object)), memberOptions As System.Action(Of AutoMapper.IMemberConfigurationExpression(Of Infrastructure.NameAddress))) As AutoMapper.IMappingExpression(Of Infrastructure.NameAddress, Core.TaxiLicensing.PersonalDetails)': Expression does not produce a value.
Tôi đang thiếu gì? Ánh xạ của tôi có đúng không? Dường như đang cố gắng sử dụng quá tải chức năng mà tôi không định sử dụng.
Tôi ghét vb cho điều này, C# rất thú vị! – Muds
Chỉ để lưu những người khác khỏi tìm kiếm sự khác biệt một cách điên cuồng - anh ấy đang sử dụng "Phụ" thay vì "Chức năng" với thông số "opt" –