WorkflowApplication.Persist Metoda

Definice

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

Přetížení

Name Description
Persist()

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

Persist(TimeSpan)

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

Poznámky

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

Persist()

Uchovává 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ání Persist pro 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 trvalá operace nedokončí do 30 sekund, TimeoutException vyvolá se hodnota.

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

Platí pro

Persist(TimeSpan)

Zachová instanci pracovního postupu do úložiště instancí pomocí zadaného intervalu č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 trvalá operace dokončena před zrušením operace a TimeoutException vyvolá se.

Příklady

Následující příklad volání Persist pro 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 stejná InstanceStore jako k načtení pracovního postupu pro trvalost. Pokud byl pracovní postup vytvořen a dosud nebyl zachován, InstanceStore je nutné před voláním této metody nebo jinak vyvolána InvalidOperationException při volání této metody.

Platí pro