何が間違っていますか?クラスのプロパティ内でListコレクションを持っているときにC#Listでデータを追加できません
予約リスト(他のクラス)をインスタンス化する必要がありますか?
clsP.Books = new List<Book>();
これは私がlinqpad
でエラーを取得するラインである 'UserQuery.Book' 3つの引数
var book1 = new Book("Neuromancer", "William Gibson", "Science Fiction");
を取るコンストラクタが含まれていませんこれは完全なコードですが、何が問題なのですか?
void Main()
{
var clsPList = new List<clsPerson>();
var clsP = new clsPerson();
clsP.FirstName = "jack";
clsP.LastName = "barker";
clsP.Gender = "male";
//clsP.Books = new List<Book>();
var book1 = new Book("Neuromancer", "William Gibson", "Science Fiction");
clsP.Books.Add(book1);
clsPList.Add(clsP);
clsPList.Dump();
}
public class clsPerson
{
public string FirstName;
public string LastName;
public string Gender;
public List<Book> Books = new List<Book>();
}
public class Book
{
public string Title;
public string Author;
public string Genre;
}
ブッククラスには、引数がゼロのデフォルトコンストラクタしかありません。 –
これは引数を取るコンストラクタを持っていないので、clsPersonオブジェクトと同じようにプロパティを初期化するだけです。 –