DomainContext.SubmitChanges-Methode (Action (generisch), Object)
Sendet alle ausstehenden Änderungen an den Domänendienst.
Namespace: System.ServiceModel.DomainServices.Client
Assembly: System.ServiceModel.DomainServices.Client (in system.servicemodel.domainservices.client.dll)
Verwendung
'Usage
Dim instance As DomainContext
Dim callback As Action(Of SubmitOperation)
Dim userState As Object
Dim returnValue As SubmitOperation
returnValue = instance.SubmitChanges(callback, userState)
Syntax
'Declaration
Public Overridable Function SubmitChanges ( _
callback As Action(Of SubmitOperation), _
userState As Object _
) As SubmitOperation
public virtual SubmitOperation SubmitChanges (
Action<SubmitOperation> callback,
Object userState
)
public:
virtual SubmitOperation^ SubmitChanges (
Action<SubmitOperation^>^ callback,
Object^ userState
)
public SubmitOperation SubmitChanges (
Action<SubmitOperation> callback,
Object userState
)
public function SubmitChanges (
callback : Action<SubmitOperation>,
userState : Object
) : SubmitOperation
Parameter
- callback
Optionaler Rückruf für den Sendevorgang.
- userState
Optionaler Benutzerzustand, der dem Vorgang zugeordnet werden soll.
Rückgabewert
Der Sendevorgang.
Beispiel
Im folgenden Codebeispiel werden Methoden gezeigt, die die SubmitChanges-Methode und die RejectChanges-Methode aufrufen.
Private Sub SaveButton_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs)
_customerContext.SubmitChanges(AddressOf OnSubmitCompleted, Nothing)
End Sub
Private Sub RejectButton_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs)
_customerContext.RejectChanges()
CheckChanges()
End Sub
Private Sub CustomerGrid_RowEditEnded(ByVal sender As System.Object, ByVal e As System.Windows.Controls.DataGridRowEditEndedEventArgs)
CheckChanges()
End Sub
Private Sub CheckChanges()
Dim changeSet = _customerContext.EntityContainer.GetChanges()
ChangeText.Text = changeSet.ToString()
Dim hasChanges = _customerContext.HasChanges
SaveButton.IsEnabled = hasChanges
RejectButton.IsEnabled = hasChanges
End Sub
Private Sub OnSubmitCompleted(ByVal so As SubmitOperation)
If (so.HasError) Then
MessageBox.Show(String.Format("Submit Failed: {0}", so.Error.Message))
so.MarkErrorAsHandled()
End If
CheckChanges()
End Sub
private void SaveButton_Click(object sender, RoutedEventArgs e)
{
_customerContext.SubmitChanges(OnSubmitCompleted, null);
}
private void RejectButton_Click(object sender, RoutedEventArgs e)
{
_customerContext.RejectChanges();
CheckChanges();
}
private void CustomerGrid_RowEditEnded(object sender, DataGridRowEditEndedEventArgs e)
{
CheckChanges();
}
private void CheckChanges()
{
EntityChangeSet changeSet = _customerContext.EntityContainer.GetChanges();
ChangeText.Text = changeSet.ToString();
bool hasChanges = _customerContext.HasChanges;
SaveButton.IsEnabled = hasChanges;
RejectButton.IsEnabled = hasChanges;
}
private void OnSubmitCompleted(SubmitOperation so)
{
if (so.HasError)
{
MessageBox.Show(string.Format("Submit Failed: {0}", so.Error.Message));
so.MarkErrorAsHandled();
}
CheckChanges();
}
Hinweise
Verwenden Sie die SubmitChanges-Methode zum Aktualisieren, Einfügen oder Löschen von Daten. Alle ausstehenden Änderungen werden in einem Vorgang gesendet. Stellen Sie eine Rückrufmethode bereit, wenn Sie nach dem Abschluss des asynchronen Vorgangs Code ausführen müssen. In der Rückrufmethode können Sie eine Fehlerprüfung durchführen und bei Bedarf die Benutzeroberfläche aktualisieren.
Threadsicherheit
Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht sichergestellt.
Plattformen
Entwicklungsplattformen
Windows XP Home Edition, Windows XP Professional, Windows Server 2003 , Windows Server 2008 und Windows 2000
Zielplattformen
Change History
Siehe auch
Verweis
DomainContext-Klasse
DomainContext-Member
System.ServiceModel.DomainServices.Client-Namespace