在ABP框架中使用MapTo容易犯的錯誤


用自己的話說:MapTo其實就是兩個實體間的數據轉換。不用像以前那樣p.name=p1.name 這樣賦值,一旦實體的屬性多到十幾個以上的時候,這樣賦值代碼就顯得有些臃腫了,如下面:

ResourceUpLoadDto input=new ResourceUpLoadDto();

       Resource entity = new Resource()
            {
                ProductName = input.ProductName,
                UnitPrice = input.UnitPrice,
                Company = input.Company,
                Number = input.Number,
                DeliveryDate = input.DeliveryDate,
                SingleWeight = input.SingleWeight,
                Specification = input.Specification,
                Model = input.Model,
                BrandName = input.BrandName,
                Material = input.Material,
                Drawingno = input.Drawingno,
                Standard = input.Standard,
                TechnicalParameters = input.TechnicalParameters,
                ProductRemark = input.ProductRemark,
                UploadTime = input.UploadTime
            };

使用Mato只需要一句話:entity.MapTo<ResourceUpLoadDto>();

AutoMap:當前實體和映射實體相互都可以轉換

AutoMapFrom:當前實體只能轉為映射實體

舉例說明我在使用這個MapTo時候操過的坑。

實體類:

資源列表展示Dto:注意在這個類上面寫上這個標記:  [AutoMap(typeof(Resource))]

注意上面標記的地方,這里我犯了兩次錯誤!!!這里面不能直接寫實體

 修改方式新建一個用戶的Dto:

然后在資源列表Dto中改為:

還有一個注意點:屬性名User的寫法也要與實體中的寫法保持一致!!!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM