Bagikan melalui


SqlTrackingQueryOptions.StatusMinDateTime Properti

Definisi

Mendapatkan atau mengatur DateTime yang, bersama dengan WorkflowStatus, digunakan untuk membatasi kumpulan SqlTrackingWorkflowInstance objek yang dikembalikan oleh panggilan ke GetWorkflows(SqlTrackingQueryOptions).

public:
 property DateTime StatusMinDateTime { DateTime get(); void set(DateTime value); };
public DateTime StatusMinDateTime { get; set; }
member this.StatusMinDateTime : DateTime with get, set
Public Property StatusMinDateTime As DateTime

Nilai Properti

DateTime yang menentukan batas bawah periode waktu yang digunakan untuk mencocokkan instans alur kerja dengan status yang ditentukan oleh WorkflowStatus. Defaultnya adalah DateTime.MinValue.

Contoh

Contoh berikut menunjukkan pengaturan properti StatusMinDateTime. Contoh ini berasal dari sampel SDK Monitor Alur Kerja. Untuk informasi selengkapnya, lihat Sampel Monitor Alur Kerja.

try
{
    List<SqlTrackingWorkflowInstance> queriedWorkflows = new List<SqlTrackingWorkflowInstance>();
    SqlTrackingQuery sqlTrackingQuery = new SqlTrackingQuery(connectionString);
    SqlTrackingQueryOptions sqlTrackingQueryOptions = new SqlTrackingQueryOptions();
    sqlTrackingQueryOptions.StatusMinDateTime = from.ToUniversalTime();
    sqlTrackingQueryOptions.StatusMaxDateTime = until.ToUniversalTime();
    // If QualifiedName, FieldName, or DataValue is not supplied, we will not query since they are all required to match
    if (!((string.Empty == trackingDataItemValue.QualifiedName) || (string.Empty == trackingDataItemValue.FieldName) || ((string.Empty == trackingDataItemValue.DataValue))))
        sqlTrackingQueryOptions.TrackingDataItems.Add(trackingDataItemValue);

    queriedWorkflows.Clear();

    if ("created" == workflowEvent.ToLower(CultureInfo.InvariantCulture))
    {
        sqlTrackingQueryOptions.WorkflowStatus = WorkflowStatus.Created;
        queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions));
    }
    else if ("completed" == workflowEvent.ToLower(CultureInfo.InvariantCulture))
    {
        sqlTrackingQueryOptions.WorkflowStatus = WorkflowStatus.Completed;
        queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions));
    }
    else if ("running" == workflowEvent.ToLower(CultureInfo.InvariantCulture))
    {
        sqlTrackingQueryOptions.WorkflowStatus = WorkflowStatus.Running;
        queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions));
    }
    else if ("suspended" == workflowEvent.ToLower(CultureInfo.InvariantCulture))
    {
        sqlTrackingQueryOptions.WorkflowStatus = WorkflowStatus.Suspended;
        queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions));
    }
    else if ("terminated" == workflowEvent.ToLower(CultureInfo.InvariantCulture))
    {
        sqlTrackingQueryOptions.WorkflowStatus = WorkflowStatus.Terminated;
        queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions));
    }
    else if (("all" == workflowEvent.ToLower(CultureInfo.InvariantCulture)) || string.IsNullOrEmpty(workflowEvent))
    {
        sqlTrackingQueryOptions.WorkflowStatus = WorkflowStatus.Created;
        queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions));

        sqlTrackingQueryOptions.WorkflowStatus = WorkflowStatus.Completed;
        queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions));

        sqlTrackingQueryOptions.WorkflowStatus = WorkflowStatus.Running;
        queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions));

        sqlTrackingQueryOptions.WorkflowStatus = WorkflowStatus.Suspended;
        queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions));

        sqlTrackingQueryOptions.WorkflowStatus = WorkflowStatus.Terminated;
        queriedWorkflows.AddRange(sqlTrackingQuery.GetWorkflows(sqlTrackingQueryOptions));
    }
    return queriedWorkflows;
}
catch (Exception exception)
{
    throw new Exception("Exception in GetWorkflows", exception);
}

Keterangan

SqlTrackingQueryOptions membatasi kumpulan SqlTrackingWorkflowInstance objek yang dikembalikan oleh panggilan ke SqlTrackingQuery.GetWorkflows instans alur kerja yang memiliki Type yang ditentukan oleh WorkflowType, yang memiliki status yang ditentukan oleh WorkflowStatus selama periode yang ditentukan oleh StatusMinDateTime dan StatusMaxDateTime, dan yang telah mengekstrak data yang cocok dengan setidaknya salah TrackingDataItemValue satu objek yang ditentukan oleh TrackingDataItems.

Nilai DateTime yang ditentukan oleh StatusMinDateTime bersifat inklusif. Untuk informasi selengkapnya tentang bagaimana status instans alur kerja dicocokkan, lihat WorkflowStatus properti .

Catatan

Jika WorkflowStatus diatur ke null, maka StatusMaxDateTime dan StatusMinDateTime diabaikan. Semua instans alur kerja akan dikembalikan saat GetWorkflows dipanggil.

Berlaku untuk