WorkflowApplication.Persist Metoda

Definice

Zachová instanci pracovního postupu do úložiště instancí.

Přetížení

Persist()

Zachová instanci pracovního postupu do úložiště instancí.

Persist(TimeSpan)

Zachová instanci pracovního postupu do úložiště instancí pomocí zadaného časového limitu.

Poznámky

Pokud byla instance pracovního postupu dříve načtena z trvalosti, použije se pro trvalost stejná InstanceStore hodnota, která se používá k načtení pracovního postupu. Pokud byl pracovní postup vytvořen a dosud nebyl zachován, musí být před voláním InstanceStore této metody nakonfigurována, jinak InvalidOperationException je vyvolána při volání této metody.

Persist()

Zachová instanci pracovního postupu do úložiště instancí.

public:
 void Persist();
public void Persist ();
member this.Persist : unit -> unit
Public Sub Persist ()

Příklady

Následující příklad volá Persist k zachování instance pracovního postupu před spuštěním pracovního postupu.

WorkflowApplication application = new WorkflowApplication(activity);

application.InstanceStore = instanceStore;

//returning IdleAction.Unload instructs the WorkflowApplication to persists application state and remove it from memory
application.PersistableIdle = (e) =>
{
    return PersistableIdleAction.Unload;
};

application.Unloaded = (e) =>
{
    instanceUnloaded.Set();
};

//This call is not required
//Calling persist here captures the application durably before it has been started
application.Persist();
id = application.Id;
application.Run();

instanceUnloaded.WaitOne();

Poznámky

Pokud se operace trvalí nedokoní do 30 sekund, TimeoutException vyvolá se příkaz .

Pokud byla instance pracovního postupu dříve načtena z trvalosti, použije se pro trvalost stejná InstanceStore hodnota, která se používá k načtení pracovního postupu. Pokud byl pracovní postup vytvořen a dosud nebyl zachován, musí být před voláním InstanceStore této metody nakonfigurována, jinak InvalidOperationException je vyvolána při volání této metody.

Platí pro

Persist(TimeSpan)

Zachová instanci pracovního postupu do úložiště instancí pomocí zadaného časového limitu.

public:
 void Persist(TimeSpan timeout);
public void Persist (TimeSpan timeout);
member this.Persist : TimeSpan -> unit
Public Sub Persist (timeout As TimeSpan)

Parametry

timeout
TimeSpan

Interval, ve kterém musí být operace trvalá před zrušením operace dokončena a TimeoutException vyvolána.

Příklady

Následující příklad volá Persist k zachování instance pracovního postupu před spuštěním pracovního postupu.

WorkflowApplication application = new WorkflowApplication(activity);

application.InstanceStore = instanceStore;

//returning IdleAction.Unload instructs the WorkflowApplication to persists application state and remove it from memory
application.PersistableIdle = (e) =>
{
    return PersistableIdleAction.Unload;
};

application.Unloaded = (e) =>
{
    instanceUnloaded.Set();
};

//This call is not required
//Calling persist here captures the application durably before it has been started
application.Persist();
id = application.Id;
application.Run();

instanceUnloaded.WaitOne();

Poznámky

Pokud byla instance pracovního postupu dříve načtena z trvalosti, použije se pro trvalost stejná InstanceStore hodnota, která se používá k načtení pracovního postupu. Pokud byl pracovní postup vytvořen a dosud nebyl zachován, musí být před voláním InstanceStore této metody nakonfigurována, jinak InvalidOperationException je vyvolána při volání této metody.

Platí pro