1
我在我的網站有一個問題,我有兩個對象在會議中舉行,兩個對象的結構不同,並沒有任何鏈接到對方(不是故意)。但是,這兩個對象都有一系列「旅行者」。我試圖做的是通過添加或刪除「旅行者」來修改一個集合,當完成按鈕被點擊後,修改後的集合將被保存到另一個對象。更新1對象似乎也更新另一個。 VB.Net
問題是,由於某種原因,當我修改一個對象中的一個集合時,還會對另一個對象中的集合進行修改。
這裏有一個粗略的例子:
Dim bookingContext As BookingContext = Session("BookingContext")
Dim personSearchContext As PersonSearchContext = Session("PersonSearchContext")
Dim personId As Integer = Request.Form("PersonID")
Dim mode As String = Request.Form("Mode")
Select Case mode
Case "Add"
For Each traveller As PersonProfile In personSearchContext.Travellers
If traveller.PersonID = personId Then
personSearchContext.SelectedTravellers.Add(traveller)
Exit For
End If
Next
context.Session("PersonSearchContext") = personSearchContext
Case "Remove"
For Each traveller As PersonProfile In personSearchContext.SelectedTravellers
If traveller.PersonID = personId Then
travellerSearchContext.SelectedTravellers.Remove(traveller)
Exit For
End If
Next
context.Session("PersonSearchContext") = personSearchContext
Case "Save"
bookingContext.Travellers = personSearchContext.SelectedTravellers
context.Session("BookingContext") = bookingContext
End Select
的問題是對象「BookingContext」內的遊客收集被更新時,我添加和從集合「PersonSearchContext」中刪除。就好像它們之間有某種鏈接或指針。
任何想法?
乾杯。
太棒了!當你考慮它時是有意義的。我的代碼沒有,乾杯隊友。 – DazzledKid 2010-07-27 14:16:12