C# 生成 MongoDB 中的 ObjectId


ObjectId介紹

在MongoDB中,文檔(document)在集合(collection)中的存儲需要一個唯一的_id字段作為主鍵。這個_id默認使用ObjectId來定義,因為ObjectId定義的足夠短小,並盡最大可能的保持唯一性,同時能被快速的生成。

ObjectId 是一個 12 Bytes 的 BSON 類型,其包含:

  1. 4 Bytes 自紀元時間開始的秒數
  2. 3 Bytes 機器描述符
  3. 2 Bytes 進程ID
  4. 3 Bytes 隨機數

ObjectId的存儲使用Byte數組,而其展現需將Byte數組轉換成字符串進行顯示,所以通常我們看到的ObjectId都類似於:

ObjectId("507f191e810c19729de860ea")

原樣例代碼存在問題,已刪除,請直接參考官方代碼。

https://github.com/mongodb/mongo-csharp-driver

https://github.com/mongodb/mongo-csharp-driver/blob/ec74978f7e827515f29cc96fba0c727828e8df7c/src/MongoDB.Bson/ObjectModel/ObjectId.cs

 


免責聲明!

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



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