文字列と文字列配列を取り、反復可能な匿名型を作成したいと思います。目標はグループのリストを作成することであり、各グループには個人が含まれます。
この擬似コードのようなものが可能かどうか知りたいのですが:
var myAnoty =new List<string, string[]>();
myAnoty.add("Programmers", ["Linus", "Bill", "Anders"]);
myAnoty.add("Users", ["John", "Melissa", "Bert"]);
Muzzがコメントで指摘したように、上記の擬似コードは匿名型を使用していません。以下のリードコプシーの答えはそれらを使用しています:var m = new { Group = "Men", Members = new[] { "John", "Tom" } }
匿名タイプを使用せずに動作するデモ
次のコードはLinqPadで機能します。
void Main()
{
List<Object> myAnoties = new List<Object>();
myAnoties.Add(new Anoty {Group="Men", Member=new string[]{"John","Tom"}} );
myAnoties.Add(new Anoty {Group="Women", Member=new string[]{"Eve","Anna"}} );
myAnoties.Dump();
}
// Define other methods and classes here
class Anoty{
public string Group{get; set;}
public string[] Member{get; set;}
}
匿名タイプを使用して機能しない
次のコードは匿名型を使用しています。しかし、どういうわけか、文字列配列は匿名型では機能しません。
var m = new { Group= "Men", Member=string[]{"John","Tom"}};
var w = new { Group= "Women", Member=string[]{"Eve","Anna"}};
List<object> myAnoties = new List<object>();
myAnoties.Add(m);
myAnoties.Add(w);
私の擬似コードのようなvar x = new List<string,string[]>()
ものや匿名タイプ(上記のような)のものを実行する方法はありますか?
ありがとう