0
var queryResult = this.kindergardenDataContext.Groups.Where(g => g.group_id == groupToAdd.group_id && g.group_enabled==true);
                if (queryResult != null && queryResult.Count() != 0)
                {

                    Group groupToEdit = queryResult.First();

                    groupToEdit.group_name = groupToAdd.group_name;
                    groupToEdit.group_create_date = groupToAdd.group_create_date;
                    groupToEdit.Kindergarden = groupToAdd.Kindergarden;
                    groupToEdit.GroupGuardian = groupToAdd.GroupGuardian;
                    groupToEdit.Room = groupToAdd.Room;     

                }
                this.kindergardenDataContext.SubmitChanges();

やあ。LINQの初心者です。これで問題ありませんが、外国人のキー kindergarden、groupguardian、room がデータベースで複製されました (kindergarden、groupguardian、room テーブルのデータベースに新しい行が追加されました)。グループテーブルの行を更新するための適切な参照を設定するにはどうすればよいですか?

4

1 に答える 1

0

groupToAdd.KindergardengroupToAdd.GroupGuardian , andgroupToAdd.Room this.kindergardenDataContext`を取得するfromか、正しい ID セットでそれらを添付しない限り、これは予想される動作です。データベースに既に存在する同じオブジェクト インスタンスを意味することを認識していません。

于 2012-06-11T19:14:48.047 に答える