SqlWorkflowPersistenceService Sınıf

Tanım

Dikkat

The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*

İş akışı durumu bilgilerini depolamak için SQL veritabanı kullanan bir kalıcılık hizmetini temsil eder.

public ref class SqlWorkflowPersistenceService : System::Workflow::Runtime::Hosting::WorkflowPersistenceService, System::Workflow::Runtime::IPendingWork
public class SqlWorkflowPersistenceService : System.Workflow.Runtime.Hosting.WorkflowPersistenceService, System.Workflow.Runtime.IPendingWork
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public class SqlWorkflowPersistenceService : System.Workflow.Runtime.Hosting.WorkflowPersistenceService, System.Workflow.Runtime.IPendingWork
type SqlWorkflowPersistenceService = class
    inherit WorkflowPersistenceService
    interface IPendingWork
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type SqlWorkflowPersistenceService = class
    inherit WorkflowPersistenceService
    interface IPendingWork
Public Class SqlWorkflowPersistenceService
Inherits WorkflowPersistenceService
Implements IPendingWork
Devralma
Öznitelikler
Uygulamalar

Açıklamalar

Note

Bu malzeme, eski türleri ve ad alanlarını ele alır. Daha fazla bilgi için bkz. Deprecated Types in Windows Workflow Foundation 4.5.

SqlWorkflowPersistenceService sınıfı, tam işlevsel bir kalıcılık hizmetini temsil eder. İş akışı çalışma zamanı altyapısı tarafından istendiğinde iş akışı örneğiyle ilgili iş akışı durumu bilgilerini kalıcı hale getirmek ve almak için bu hizmeti kullanıma alınmış olarak kullanabilirsiniz.

, SqlWorkflowPersistenceService tarafından sağlanan iş akışı işlemi toplu işleme işlevine WorkflowCommitWorkBatchServicekatılır. Başka bir ifadeyle, SQL veritabanına WorkBatch bekleyen yazmaları temsil eden nesneleri ekler ve arabirimini IPendingWork uygular.

, SqlWorkflowPersistenceService iş akışı örneklerinin kilitlenmesini destekler. Bu özellik, birkaç iş akışı çalışma zamanı aynı veritabanını paylaştığında kullanılır. SQL veritabanı tablosundaki bir sütun, iş akışı çalışma zamanı tarafından her kullanıldığında iş akışı örneğini kilitli olarak işaretlemek için kullanılır. , SqlWorkflowPersistenceService başka bir çalışma zamanı tarafından "kullanımda" olarak işaretlenmiş bir iş akışı örneğini yüklemez. Bu kilitler genellikle iş akışı örneği kalıcı hale geldiğinde (örneğin boşta, tamamlanmada veya sonlandırmada) serbest bırakılır. Kilitler, bir süre etkinlik dışı kaldıktan sonra otomatik olarak da serbest bırakılabilir. Bu işlem yapılmama süresi, sınıfın SqlWorkflowPersistenceService oluşturucu kullanılarak ayarlanabilir. Yapılandırma dosyası aracılığıyla da ayarlanabilir.

Genel olarak kalıcılık hizmetleri hakkında daha fazla bilgi için sınıfına WorkflowPersistenceService bakın.

İş akışı örnekleri, örneğin bir DelayActivityzamanlayıcıları varsa zamanlayıcılar içerebilir. Zamanlayıcı içeren iş akışları için, iş akışının SqlWorkflowPersistenceService bir sonraki süreölçerinin süresinin dolduğu zamanı kaydeder. , SqlWorkflowPersistenceService zamanlayıcılarının süresi dolmuş iş akışlarını arayarak veritabanını düzenli aralıklarla yoklar. Yoklama aralığının sıklığı oluşturucu kullanılarak SqlWorkflowPersistenceService veya bir yapılandırma dosyası kullanılarak ayarlanabilir.

Note

bir iş akışı uygulamasında hem SqlTrackingService de SqlWorkflowPersistenceService kullanırken, hem kalıcılık hem de izleme için tek bir veritabanı kullanmanız önerilir.

Oluşturucular

Name Description
SqlWorkflowPersistenceService(NameValueCollection)
Geçersiz.

Belirtilen parametreleri kullanarak sınıfının yeni bir örneğini SqlWorkflowPersistenceService başlatır.

SqlWorkflowPersistenceService(String, Boolean, TimeSpan, TimeSpan)
Geçersiz.

Veritabanı bağlantı dizesi ve diğer parametreleri kullanarak SqlWorkflowPersistenceService sınıfının yeni bir örneğini başlatır.

SqlWorkflowPersistenceService(String)
Geçersiz.

veritabanı bağlantı dizesi kullanarak SqlWorkflowPersistenceService sınıfının yeni bir örneğini başlatır.

Özellikler

Name Description
EnableRetries
Geçersiz.

Bir iş toplu işleminin yeniden işlenip işlenmeyeceğini SqlWorkflowPersistenceService belirten bir değer alır veya ayarlar.

LoadingInterval
Geçersiz.

Yükleme aralığının uzunluğunu alır.

Runtime
Geçersiz.

Bu hizmet için öğesini WorkflowRuntime alır.

(Devralındığı yer: WorkflowRuntimeService)
ServiceInstanceId
Geçersiz.

Hizmet örneği tanımlayıcısını alır.

State
Geçersiz.

durumunu WorkflowRuntimeServicealır.

(Devralındığı yer: WorkflowRuntimeService)

Yöntemler

Name Description
Equals(Object)
Geçersiz.

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetAllWorkflows()
Geçersiz.

Kalıcı olan tüm iş akışlarının örnek açıklamalarını alır.

GetHashCode()
Geçersiz.

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()
Geçersiz.

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
LoadCompletedContextActivity(Guid, Activity)
Geçersiz.

Belirtilen tamamlanmış kapsamı veritabanından alır.

LoadExpiredTimerWorkflowIds()
Geçersiz.

Süresi dolmuş süreölçerleri olan iş akışları için kimliklerin listesini alır.

LoadWorkflowInstanceState(Guid)
Geçersiz.

Belirtilen iş akışı örneği durumunu veritabanından alır.

MemberwiseClone()
Geçersiz.

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
OnStarted()
Geçersiz.

Yeni bir zamanlayıcı başlatır ve çalışan iş akışı örneklerini kurtarır.

OnStopped()
Geçersiz.

Türetilmiş bir sınıfta geçersiz kılındığında, iş akışı çalışma zamanı altyapısı olayı tetiklediğinde çağrılacak yöntemi temsil eder Stopped .

(Devralındığı yer: WorkflowRuntimeService)
RaiseServicesExceptionNotHandledEvent(Exception, Guid)
Geçersiz.

Olayı tetikler ServicesExceptionNotHandled .

(Devralındığı yer: WorkflowRuntimeService)
SaveCompletedContextActivity(Activity)
Geçersiz.

Belirtilen tamamlanan kapsamın durumunu kaydeder.

SaveWorkflowInstanceState(Activity, Boolean)
Geçersiz.

Belirtilen iş akışı örneği durumunu kaydeder.

Start()
Geçersiz.

SqlWorkflowPersistenceServiceöğesini başlatır.

Stop()
Geçersiz.

Hizmeti ve zamanlayıcıyı durdurur.

ToString()
Geçersiz.

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)
UnloadOnIdle(Activity)
Geçersiz.

İş akışının boşta durumundayken kaldırılıp kaldırılmadığını gösteren bir değer döndürür.

UnlockWorkflowInstanceState(Activity)
Geçersiz.

Belirtilen iş akışı örneği durumuna erişimin kilidini açar.

Belirtik Arabirim Kullanımları

Name Description
IPendingWork.Commit(Transaction, ICollection)
Geçersiz.

Veritabanına seri hale getirilmiş durum nesnelerinden birini ICollection yazar.

IPendingWork.Complete(Boolean, ICollection)
Geçersiz.

İş toplu işlemini tamamlar ve tüm kaynakları serbest bırakır.

IPendingWork.MustCommit(ICollection)
Geçersiz.

Seri hale getirilmiş durum nesneleri koleksiyonunun veritabanına yazılması gerekip gerekmediğini gösteren bir değer döndürür.

Şunlara uygulanır