Aracılığıyla paylaş


SqlTrackingQueryOptions.StatusMaxDateTime Özellik

Tanım

ile birlikte WorkflowStatusçağrısı tarafından döndürülen nesne kümesini SqlTrackingWorkflowInstance kısıtlamak için kullanılan zaman aralığının üst sınırını belirten bir GetWorkflows(SqlTrackingQueryOptions)alır veya ayarlarDateTime.

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

Özellik Değeri

DateTime tarafından WorkflowStatusbelirtilen bir durumla eşleşen iş akışı örnekleri için kullanılan zaman aralığının üst sınırını belirten bir. Varsayılan değer DateTime.MinValue'dır.

Örnekler

Aşağıdaki örnekte StatusMaxDateTime özelliğinin ayarlanması gösterilmektedir. Bu örnek İş Akışı İzleyicisi SDK örneğindendir. Daha fazla bilgi için bkz . İş Akışı İzleyicisi Örneği.

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);
}

Açıklamalar

SqlTrackingQueryOptionsçağrısı SqlTrackingQuery.GetWorkflows tarafından döndürülen nesne kümesini SqlTrackingWorkflowInstance ve tarafından belirtilen süre boyunca tarafından belirtilen duruma sahip Type olan ve StatusMaxDateTimetarafından StatusMinDateTime belirtilen WorkflowTypenesnelerden en az biriyle TrackingDataItemValue eşleşen verileri ayıklayan tarafından belirtilen WorkflowStatus iş akışı örneklerine TrackingDataItemskısıtlar.

DateTime tarafından StatusMaxDateTime belirtilen değer kapsayıcıdır. bir iş akışı örneğinin durumunun nasıl eşlendiği hakkında daha fazla bilgi için özelliğine WorkflowStatus bakın.

Not

null StatusMaxDateTime olarak ayarlanırsa WorkflowStatus ve StatusMinDateTime yoksayılır. Çağrıldığında GetWorkflows tüm iş akışı örnekleri döndürülür.

Şunlara uygulanır