WorkflowDesignerLoader.Flush Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zapisuje oczekujące zmiany w lokalizacji, z którą został załadowany projektant.
public:
override void Flush();
public override void Flush ();
override this.Flush : unit -> unit
Public Overrides Sub Flush ()
Przykłady
W poniższym przykładzie pokazano, jak zastąpić metodę Flush serializacji przepływu pracy przy użyciu metody WorkflowMarkupSerializer. W tym przykładzie delegaty zastępowane Flush do PerformFlush metody zdefiniowanej w klasie pochodnej WorkflowDesignerLoader .
public override void Flush()
{
this.PerformFlush(null);
}
protected override void PerformFlush(IDesignerSerializationManager manager)
{
IDesignerHost host = (IDesignerHost)GetService(typeof(IDesignerHost));
if (host != null && host.RootComponent != null)
{
Activity service = host.RootComponent as Activity;
if (service != null)
{
using (XmlWriter writer = XmlWriter.Create(this.xomlFile))
{
WorkflowMarkupSerializer xomlSerializer = new WorkflowMarkupSerializer();
if (manager == null)
{
xomlSerializer.Serialize(writer, service);
}
else
{
xomlSerializer.Serialize(manager, writer, service);
}
}
}
}
}
Public Overrides Sub Flush()
Me.PerformFlush(Nothing)
End Sub
Protected Overrides Sub PerformFlush(ByVal manager As IDesignerSerializationManager)
Dim host As IDesignerHost = CType(GetService(GetType(IDesignerHost)), IDesignerHost)
If host IsNot Nothing And host.RootComponent IsNot Nothing Then
Dim service As Activity = CType(host.RootComponent, Activity)
If service IsNot Nothing Then
Using writer As XmlWriter = XmlWriter.Create(Me.XomlFile)
Dim xomlSerializer As New WorkflowMarkupSerializer()
If manager IsNot Nothing Then
xomlSerializer.Serialize(writer, service)
Else
xomlSerializer.Serialize(manager, writer, service)
End If
End Using
End If
End If
End Sub