1
我更新我們從3版本automapper庫5.2.0版本,我就在映射設置這行代碼得到這個錯誤更新到Automapper V5有錯誤與.NullSubstitute
System.InvalidOperationException: System.InvalidOperationException: No coercion operator is defined between types 'System.String' and 'System.Int32'
爲兩個複雜的對象。
cfg.CreateMap<objA, objB>()
.ForAllMembers(config => config.NullSubstitute(string.Empty));
我猜這種情況正在發生,因爲它不能設置INT爲null,它現在是明確的它,並在automapper的V3,它只是忽略了它。有人可以證實嗎?我是否必須明確映射第5版中的每個成員類型?
對於此映射,對象具有整數,布爾值和字符串。有沒有辦法告訴它將字符串映射到String.Empty當它們爲null並忽略其他類型?
威爾適用於所有映射對象? –
是的。 「ForAllPropertyMaps」中的「All」還有什麼意思:) –
我誤解了你的答案。我以爲你的意思是刪除.ForAllMembers代碼併爲一個映射添加ForAllPropertyMaps。但是你要說離開.ForAllMembers代碼並添加這個新方法來控制NullSubstitute方法適用於每個映射的類型,而不僅僅是一個特定的映射。無論如何,這是它的工作。謝謝! –