WorkflowDesignerLoader.PerformFlush(IDesignerSerializationManager) 方法

定义

将缓存的更改写入设计器的加载位置。

protected:
 override void PerformFlush(System::ComponentModel::Design::Serialization::IDesignerSerializationManager ^ serializationManager);
protected override void PerformFlush (System.ComponentModel.Design.Serialization.IDesignerSerializationManager serializationManager);
override this.PerformFlush : System.ComponentModel.Design.Serialization.IDesignerSerializationManager -> unit
Protected Overrides Sub PerformFlush (serializationManager As IDesignerSerializationManager)

参数

serializationManager
IDesignerSerializationManager

实现 IDesignerSerializationManager 接口的类,此接口管理设计时序列化。

示例

下面的示例演示如何重写 PerformFlush 方法以使用 WorkflowMarkupSerializer 序列化工作流。

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

适用于