Sdílet prostřednictvím


SqlTrackingQueryOptions.StatusMinDateTime Vlastnost

Definice

Získá nebo nastaví DateTime , který spolu s WorkflowStatus, slouží k omezení množiny SqlTrackingWorkflowInstance objektů vrácených voláním .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

Hodnota vlastnosti

A DateTime , který určuje dolní limit časového období používaného pro porovnávání instancí pracovního postupu se stavem určeným parametrem WorkflowStatus. Výchozí hodnota je DateTime.MinValue.

Příklady

Následující příklad ukazuje nastavení StatusMinDateTime vlastnost. Tento příklad je z ukázky sady SDK pro monitorování pracovních postupů. Další informace najdete v ukázce monitorování pracovního postupu.

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

Poznámky

SqlTrackingQueryOptions omezuje sadu objektů vrácených SqlTrackingWorkflowInstance voláním SqlTrackingQuery.GetWorkflows na ty instance pracovního postupu, které mají Type hodnotu určenou parametrem WorkflowType, které mají stav určený parametrem WorkflowStatus během období určeného operátorem StatusMinDateTime a StatusMaxDateTimea extrahovaná data, která odpovídají alespoň jednomu z TrackingDataItemValue objektů určených nástrojem TrackingDataItems.

Hodnota určená DateTime parametrem StatusMinDateTime je inkluzivní. Další informace o porovnávání stavu instance pracovního postupu najdete ve WorkflowStatus vlastnosti .

Poznámka

Pokud WorkflowStatus je nastavena hodnota null, pak StatusMaxDateTime a StatusMinDateTime jsou ignorovány. Při zavolání se vrátí GetWorkflows všechny instance pracovního postupu.

Platí pro