これは私が持っているデータモデルです:
public class Team
{
[Key]
public int Id { get; set;}
[Required]
public string Name { get; set; }
[MinLength(1)]
public virtual ICollection<User> Users { get; set; }
}
私の問題は、後で新しいチーム(1人のユーザーがいる)を作成しようとすると、コンテキストが保存されているときに次の問題が発生することです。
System.ComponentModel.DataAnnotations.MinLengthAttribute.IsValidを呼び出すときに、「Users」の検証中に予期しない例外がスローされました。詳細については、内部例外を参照してください。
内部例外は次のとおりです。
{"タイプ'System.Collections.Generic.List`1[MyNameSpace.Model.User]'のオブジェクトをタイプ'System.Array'にキャストできません。"}
これが実際の保存のコードです(今のところコントローラーにあります):
if (ModelState.IsValid)
{
team.Users = new List<User>();
team.Users.Add(CurrentUser);//CurrentUser is a property that gives me the currently active User (MyNamespace.Model.User).
DB.Teams.Add(team);//DB is a DbContext object that holds DbSets of all my models
DB.SaveChanges();
return RedirectToAction("Index");
}
それで、ここで何が起こっているのですか?私は何か間違ったことをしていますか、それとも何か他のことが起こっていますか?