2017-05-18 2 views
1

Ich erstellte einen QueryExpression mit einer der Bedingungen festgelegt auf ("dev_lastremarketingtime", ConditionOperator.OlderThanXHours, 1); Die Absicht ist das Abrufen mehrerer Datensätze, die eine Stunde nach dem Wert von dev_lastremarketingtime liegen.MSCRM OlderThanXHours und die aktuelle Zeit

Es gibt Datensätze in der Tabelle, die dieses Kriterium erfüllen, sie werden jedoch nicht zurückgegeben. Wenn ich den Datensatz (RetrieveMultiple eines bestimmten Datensatzes dieses Mal) überprüfe, scheint es, dass die für den Vergleich verwendeten Zeiten nicht konsistent sind.

Wenn Sie beispielsweise den fraglichen Kontodatensatz anzeigen, ist der Wert von dev_lastremarketingtime, wie im Kontoformular angegeben, der 17.05.2017 20:57 PM. das interne ist Zeit 18.05.2017 12:57:27. Die Wanduhr zum Zeitpunkt des Tests zeigt 5/17/2017 10:38:11 PM (oder 18.05.2017 2:38:11 UTC). Dieser Datensatz sollte von der Abfrage zurückgegeben worden sein (die aktuelle Zeit ist mehr als eine Stunde nach dem Wert dev_lastremarketingtime)

Wenn ich ein paar Stunden warten und meine App erneut ausführen, werden die erwarteten Datensätze abgerufen. Es scheint daher, dass der Query-Ausdruck mit dem ConditionOperator.OlderThanXHours die aktuelle Eastern Daylight-Zeit mit der UTC-Zeit des Datensatzes vergleicht.

Wie kann ich diese Abfrage erhalten, um die gleichen Zeitzonen zu vergleichen (ich glaube nicht, dass es eine Rolle spielt)?

(My Personal Optionen umfassen die Einstellung für Eastern Time

Antwort

1

Statt den OlderThanXHours Betreiber verwenden, versuchen Sie vielleicht mit „weniger als“, die.

Auf diese Weise gefiltert werden über die Kontrolle des Datetime-Wert liefert Sie können die UTC-Zeit minus eine Stunde, wie folgt verwenden:

var qe = new QueryExpression("myentity"); 
qe.Criteria.AddCondition("dev_lastremarketingtime", ConditionOperator.LessThan, DateTime.UtcNow.AddHours(-1)); 
+0

das ist, was ich tun endete und ich denke, es funktioniert ich verstehe immer noch nicht, warum OlderTHanXHours funktionierten nicht durch.. –

Verwandte Themen