0

次のコードを使用します

Tel_CallHistory CallHistory = new Tel_CallHistory();


                     CallHistory.MobileNo = MobileNo;
                     CallHistory.CRId = CallResponse;
                     CallHistory.CallRemark = CallRemark;
                     CallHistory.UserId = UserId;
                     CallHistory.CallDate = DateTime.Now;
                     CallHistory.CallTime = DateTime.Now.TimeOfDay;

                     CallHistory.MeetingPoint = meetingpoint;
                     if (CallResponse == 1)
                     {
                         CallHistory.NCallDateOn = null;
                         CallHistory.NCallTimeAt = null;
                         CallHistory.MeetingDate = Convert.ToDateTime( meetingdate);

                         CallHistory.MeetingTime =  DateTime.Parse(meetingtime).TimeOfDay;
                     }
                     else
                     {

                         CallHistory.NCallDateOn =  Convert.ToDateTime(NCallDateOn);

                         CallHistory.NCallTimeAt =  DateTime.Parse(NCallTimeAt).TimeOfDay;  

                         CallHistory.MeetingDate = null;
                         CallHistory.MeetingTime = null;
                     }


                     db.Tel_CallHistory.AddObject(CallHistory);


                     Tel_Mobile TelMobile = _teacher.getDB().Tel_Mobile.Single(a => a.MobileNo == MobileNo);
                     TelMobile.CallDate = CallHistory.NCallDateOn;
                     TelMobile.CallTime = CallHistory.NCallTimeAt;

                     TelMobile.LCallDateOn = CallHistory.CallDate;
                     TelMobile.LCallTimeAt = CallHistory.CallTime;
                     TelMobile.LCRId = CallHistory.CRId;
                     TelMobile.LCallRemark = CallHistory.CallRemark;
                     TelMobile.LMeetingPoint = CallHistory.MeetingPoint;
                     TelMobile.LMeetingDate = CallHistory.MeetingDate;
                     TelMobile.LMeetingTime = CallHistory.MeetingTime;

                      db.Tel_Mobile.ApplyOriginalValues(TelMobile);


                     db.SaveChanges();



                     db.AcceptAllChanges();

しかし、db.Tel_Mobile.ApplyOriginalValues(TelMobile)実行すると、エラーが表示されます

指定されたオブジェクトのキーと一致するキーを持つオブジェクトが、ObjectStateManagerで見つかりませんでした。変更を適用する必要のあるオブジェクトが追加状態になっていないこと、およびそのキー値が提供されたオブジェクトのキー値と一致していることを確認してください。

4

1 に答える 1

0

あなたはおそらくそれを添付したいと思います。

db.Tel_Mobile.Attach(TelMobile);
于 2012-09-14T12:27:17.113 に答える