我正在尝试将我的班级的 Id 属性设置为另外两个属性的组合:
public class Student
{
public string Id {get;set;}
public Guid StudentNumber {get;set;]
public string SchoolId {get;set;}
}
我希望 StudentNumber 和 SchoolId 在我保存它时成为对象的 ID。
怎么做到呢?
我正在尝试将我的班级的 Id 属性设置为另外两个属性的组合:
public class Student
{
public string Id {get;set;}
public Guid StudentNumber {get;set;]
public string SchoolId {get;set;}
}
我希望 StudentNumber 和 SchoolId 在我保存它时成为对象的 ID。
怎么做到呢?
查看IdGenerator
从这两个属性自定义创建 id 的类。
http://docs.mongodb.org/ecosystem/tutorial/serialize-documents-with-the-csharp-driver/
您需要创建一个IdGenerator
实现IIdGenerator
接口(文档)的新类。有两种简单的实现方法。
请注意,文档_id
一旦保存就无法更改。您需要将其重新保存为新文档。因此,如果SchoolId
属性更改,您可能需要重新创建文档。
此外,您可能只考虑为这两个字段创建一个复合索引_id
并将ObjectId
.