close

在寫 ASP.NET MVC 時會遇到一個問題,就是從 Entity Framework 中取得的資料,要轉到 View 所需要的資料,這當中通常都是用以下的方式轉換:

2014-06-08_170353

 

這方法不是不好,只是欄位一多就會變得很煩,幸好有 AutoMapper 這樣的函式庫可以減少麻煩。

AutoMapper 在 NuGet 上可以找到。

2014-06-08_165421

 

假設 Entity Framework 跟一般 Model 的類別長這樣。

2014-06-08_165450

 

轉換的方式很簡單,一開始先告訴 AutoMapper 要做哪些類別的轉換對應,然後直接呼叫 Map 即可。

2014-06-08_165502

 

執行結果。

2014-06-08_165524

 

不過有些情況下,各類別間的欄位名稱不見得一樣,像是以下狀況。

2014-06-08_165756

 

這個時候只要告訴 AutoMapper 如何對應不同名稱的欄位即可。

2014-06-08_165937

 

AutoMapper 還有其它複雜的設定方式,不過以上的介紹應該就能應付大部份的情況了。

arrow
arrow
    全站熱搜

    卑微研究生 發表在 痞客邦 留言(0) 人氣()