2012-03-07 10 views
4

をグループ化すると、私はそうのようなオブジェクトのリストを持っていると言うことができます:.NETオブジェクトのマッピング、オブジェクト

public class FlatModel 
{ 
    public string groupName { get; set; } 
    public decimal value1 { get; set; } 
    public decimal value2 { get; set; } 
    public decimal value3 { get; set; } 
} 

を、私はGroupNameの

public class GroupedModel 
{ 
    public string groupName { get; set; } 
    public List<ModelValues> values { get; set; } 
} 

public class ModelValues 
{ 
    public decimal value1 { get; set; } 
    public decimal value2 { get; set; } 
    public decimal value3 { get; set; } 
} 
に基づいてグループ化することによって、次のオブジェクトにマッピングしたいです

Automapper、Value Injector、またはその他のオブジェクトマッピングユーティリティを使用して簡単に行う方法はありますか?

答えて

1

あなたのために働くことはできますか?

 var arr = new List<FlatModel>(); 

     var result = from p in arr 
        group p by p.groupName into g 
        select 
         new GroupedModel { 
          groupName = g.Key, 
          values = (from q in g 
               select 
                new ModelValues { 
                 value1 = q.value1, 
                 value2 = q.value2, 
                 value3 = q.value3 }).ToList() 
         }; 
+0

ありがとう、それは間違いなく正しい方向に私を指摘しました。私はLinqを非常に幅広く使用していませんが、この作業には非常に便利です。 – mystictheory

関連する問題