4

我正在尝试将我的班级的 Id 属性设置为另外两个属性的组合:

   public class Student
   {
       public string Id {get;set;}
       public Guid StudentNumber {get;set;]
       public string SchoolId {get;set;}
   }

我希望 StudentNumber 和 SchoolId 在我保存它时成为对象的 ID。

怎么做到呢?

4

1 回答 1

6

查看IdGenerator从这两个属性自定义创建 id 的类。

http://docs.mongodb.org/ecosystem/tutorial/serialize-documents-with-the-csharp-driver/

您需要创建一个IdGenerator实现IIdGenerator接口(文档)的新类。有两种简单的实现方法。

请注意,文档_id一旦保存就无法更改。您需要将其重新保存为新文档。因此,如果SchoolId属性更改,您可能需要重新创建文档。

此外,您可能只考虑为这两个字段创建一个复合索引_id并将ObjectId.

于 2013-10-27T12:39:01.903 回答