SqlTrackingQueryOptions.StatusMaxDateTime Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft DateTime mit der Angabe der Obergrenze des Zeitraums auf oder legt diese Angabe fest. Damit wird in Verbindung mit WorkflowStatus die Reihe der SqlTrackingWorkflowInstance-Objekte eingeschränkt, die durch einen Aufruf von GetWorkflows(SqlTrackingQueryOptions) zurückgegeben werden.
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
Eigenschaftswert
DateTime mit der Angabe der Obergrenze des Zeitraums, für den Workflowinstanzen mit einem Status abgeglichen werden, der durch WorkflowStatus angegeben wird. Der Standardwert ist DateTime.MinValue.
Beispiele
Das folgende Beispiel veranschaulicht das Festlegen der StatusMaxDateTime-Eigenschaft. Dieses Beispiel stammt aus dem Workflow Monitor SDK-Beispiel. Weitere Informationen finden Sie unter Beispiel für den Workflowmonitor.
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);
}
Hinweise
SqlTrackingQueryOptions schränkt die Reihe der SqlTrackingWorkflowInstance-Objekte, die durch einen Aufruf von SqlTrackingQuery.GetWorkflows zurückgegeben werden, auf die Workflowinstanzen ein, für die folgende Bedingungen gelten: Type wird durch WorkflowType angegeben, der Status wird durch WorkflowStatus, die Dauer der Einschränkung wird durch StatusMinDateTime und StatusMaxDateTime angegeben, und extrahierte Daten der Workflowinstanzen entsprechen mindesten einem der durch TrackingDataItemValue angegebenen TrackingDataItems-Objekte.
Der von DateTime angegebene StatusMaxDateTime-Wert ist inklusiv. Weitere Informationen zum Abgleich des Status einer Workflowinstanz finden Sie in den Ausführungen zur WorkflowStatus-Eigenschaft.
Hinweis
Wenn WorkflowStatus
auf NULL festgelegt ist, werden StatusMaxDateTime
und StatusMinDateTime
nicht berücksichtigt. Bei einem Aufruf von GetWorkflows
werden alle Workflowinstanzen zurückgegeben.