WorkflowApplication.Persist Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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.