どちらも投稿されていない、変数の静的メソッドまたはインスタンスメソッドのように、それとgenres.Add
(List<T>.Add
メソッド)の違いを意味していると思います。Genre.Add
Genre
Genre
最終的なコードには動作上の違いはなく、視覚的な違いにすぎません。
なぜ使用しているのかdynamic
(おそらく探しているのvar
か?)はわかりませんが、違いは、これがコレクション初期化構文.Add
と呼ばれることです。基本的には、手動で呼び出すよりも重要です。
var genres = new List<Genre> {
new Genre { Name = "Disco" },
new Genre { Name = "Jazz" },
new Genre { Name = "Rock" }
};
と同等です:
var genres = new List<Genre>();
genres.Add(new Genre { Name = "Disco" });
genres.Add(new Genre { Name = "Jazz" });
genres.Add(new Genre { Name = "Rock" });
コンパイラ.Add
はあなたの場合にあなたのためにを出力します。
C#で新しいList <string>を作成するこれらの3つの方法の違いは何ですか?
また、あなたの例では、次のようなオブジェクト初期化構文が表示されています。
new Genre { Name = "Disco" }
これは次のようになります。
var g = new Genre();
g.Name = "Disco";