私はRavenDBで遊んでいます。とても感銘を受けましたが、子オブジェクトを更新する方法を理解するのに苦労しています。たとえば、次のようなものがあるとします。
public class Course
{
public int Id { get; set; }
public string Title { get; set; }
}
public class Student
{
public Student()
{
Courses = new Collection<Course>();
}
public int Id { get; set; }
public string Name { get; set; }
public ICollection<Course> Courses { get; set; }
}
1 人の生徒と、その生徒に関連付けられた 2 つのコースをデータベースに保存できます。問題なく2つのコースを学生にロードすることもできます。しかし、たとえば、student.Courses.Add(new Course { Id = 5, Title = "Accounting 101"}) のようにコースを変更しようとしたとき、データベースにあるものと現在あるものとの間で同期することを期待していました学生。コース。基本的に、データベース内のコースを削除し、student.Courses にのみコースを含めることを期待しています。これは、RavenDB の仕組みについての私の誤解かもしれません。このような例は見つかりませんでした。この状況を処理するベストプラクティスの方法は何ですか?