ObjectId與DateTime的互相轉換


s會用mongdb中經常會需要用到通過“_id”去檢查數據,篩選數據,但是想根據具體時間的id每次都需要做一下轉換,這樣搜索起來就很簡單了。

ObjectId轉DateTime

        /// <summary>
        /// objectid轉化時間
        /// </summary>
        /// <param name="objectid"></param>
        /// <returns></returns>
        public DateTime objectid2date(string objectid)
        { 
            var _str = objectid.Substring(0, 8);//提取時間字段 4e7020cb
            var intspan= Int64.Parse(_str, System.Globalization.NumberStyles.HexNumber);//16進制轉換10進制
            System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 當地時區
            DateTime dt = startTime.AddSeconds(intspan);
            return dt;
        }

DateTime轉換ObjectId

         /// <summary>
        /// 時間轉化為objectid
        /// </summary>
        /// <param name="date"></param>
        /// <returns></returns>
        public string date2objectid(DateTime date)
        {
            ObjectId objid = new ObjectId(date, 0, 0, 0);
            return objid.ToString();
        }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM