Udostępnij za pośrednictwem


SqlTrackingQueryOptions.StatusMinDateTime Właściwość

Definicja

Pobiera lub ustawia DateTime element , który wraz z elementem WorkflowStatusjest używany do ograniczania zestawu SqlTrackingWorkflowInstance obiektów zwracanych przez wywołanie metody 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

Wartość właściwości

Element DateTime określający niższy limit czasu używany dla pasujących wystąpień przepływu pracy ze stanem określonym przez WorkflowStatus. Wartość domyślna to DateTime.MinValue.

Przykłady

W poniższym przykładzie pokazano ustawienie właściwości StatusMinDateTime. Ten przykład pochodzi z przykładowego zestawu SDK monitora przepływu pracy. Aby uzyskać więcej informacji, zobacz Przykład monitora przepływu pracy.

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

Uwagi

SqlTrackingQueryOptions ogranicza zestaw SqlTrackingWorkflowInstance obiektów zwracanych przez wywołanie do SqlTrackingQuery.GetWorkflows tych wystąpień przepływu pracy, które mają Type określony przez WorkflowType, które mają stan określony przez , w okresie określonym przez WorkflowStatusStatusMinDateTime i StatusMaxDateTime, oraz, które wyodrębniły dane zgodne z co najmniej jednym z TrackingDataItemValue obiektów określonych przez TrackingDataItems.

Wartość określona DateTime przez StatusMinDateTime parametr jest inkluzywna. Aby uzyskać więcej informacji o tym, jak jest dopasowywany stan wystąpienia przepływu pracy, zobacz WorkflowStatus właściwość .

Uwaga

Jeśli WorkflowStatus parametr ma wartość null, to StatusMaxDateTime i StatusMinDateTime są ignorowane. Po wywołaniu GetWorkflows zostaną zwrócone wszystkie wystąpienia przepływu pracy.

Dotyczy