Search code examples
c#mongodb-querymongodb-.net-driver

Convert date from iso date format to utc in mongodb query


i am new in mongodb driver.i am trying to filter documents between two date from 06-08-2015 to 06-08-2015 .this is my code

IMongoQuery querySubmissionDateFrom = Query<ReviewMDO>.GTE(m => m.SubmissionData.SubmissionDate,manuscriptFilterDocument.Filter.SubmissionFromDate.Date);
     queryFilter.Add(querySubmissionDateFrom);

you can see my manuscriptFilterDocument.Filter.SubmissionFromDate.Date filed contain value "06-08-2015 00:00:00" .because in mongodb date is automatically converted to iso date formate.how can i convert this to UTC date formate for comparison.

enter image description here but after add this to query list date value is converted to isodate format enter image description here


Solution

  • finally i got it.i share my answer to others for reference.i changed my code like this

    i use DateTime.SpecifyKind() function for convert datetime to UTC

    IMongoQuery querySubmissionDateFrom = Query<ReviewMDO>.GTE(m => m.SubmissionData.SubmissionDate, DateTime.SpecifyKind(manuscriptFilterDocument.Filter.SubmissionFromDate.Date, DateTimeKind.Utc) );
                queryFilter.Add(querySubmissionDateFrom);