SubSonic 2.2. Ich benutze das Repository-Muster, mit einer Tabelle "Termin" mit einem Termin als automatisch inkrementieren int.Seltsame seltsame Dinge, die im Repository-Datensatz passieren!
Ich versuche, es zu aktualisieren, aber wenn ich die Felder mit etwas völlig anderem aktualisieren, sind schmutzige Spalten immer Null, und ich bekomme eine Ausnahme.
System.NullReferenceException: Objektreferenz nicht auf eine Instanz eines Objekts festgelegt. bei SubSonic.DataService.ExecuteQuery (QueryCommand cmd) bei SubSonic.SubSonicRepository.Update [T] (RepositoryRecord 1 item, String userName) at janji.Janji.Data.DB.Update[T](RepositoryRecord
1 Element) in A: \ Source \ VS2008 \ Web \ Apps \ Janji \ Janji \ Classes \ DAL \ AllStructs.vb: Zeile 197 bei janji.WebForm4.SaveData() in A: \ Source \ VS2008 \ Web \ Apps \ Janji \ Janji \ UI \ Appt.aspx.vb: Linie 343
Hier ist mein Code:
Try
If Appointment.AppointmentId > 0 Then
Appointment.AddressName = uxHotel.Text
Appointment.Address = uxAddress.Text
Appointment.AppStartTime = Date.Parse(uxApptDate.SelectedDate.Value.ToShortDateString + " " + uxApptStartTime.SelectedDate.Value.ToShortTimeString)
Appointment.ApptEndTime = Date.Parse(uxApptDate.SelectedDate.Value.ToShortDateString + " " + uxApptEndTime.SelectedDate.Value.ToShortTimeString)
Appointment.Completed = uxCOmpleted.Checked
Appointment.DropNumber = uxDropNum.Text
Appointment.Total = 0
Appointment.EmployeeId = 0
Appointment.Model = uxModel.Text
Appointment.DropAmount = Decimal.Parse(uxDropAmount.SelectedValue)
Appointment.RoomNumber = uxRoom.Text
'If Appointment.DirtyColumns.Count > 0 Then
Janji.Data.DB.Update(Of Janji.Data.Appointment)(Appointment)
'End If
End If
Catch ex As Exception
_ErrorMessage = ex.ToString
RetVal = False
lErrors.Text = _ErrorMessage
lErrors.Visible = True
End Try
Ich kann nicht ganz folgen, was Sie hier tun. Kannst du etwas mehr zusammenfassen? Ist das eine Instanz oder benutzen Sie die Strukturen? Es sieht für mich so aus, als ob du die Strukturen verwendest und kein Objekt instanziierst. –
Ich erstelle es wie folgt: _Appointment = New SubSonic.Select(). Von (Janji.Data.Tables.Appointment). Wo (Janji.Data.Appointment.Columns.AppointmentId) .IsEqualTo (CallLog.ApptId) .ExecuteSingle (Of Janji.Data.Appointment)() –
Auch: schmutzige Spalten ist immer 0, auch nach dem Festlegen von Eigenschaften. Wenn ich als "markClean" markiere, schlägt das Update NICHT fehl, aber nichts wird aktualisiert. –