在4.0之前,我可以设置here on SO
中提到的自动增量属性但是使用4.0 IDocumentStoreListener,HiLoKeyGenerator已被删除。然而,我可以发现保存像this on Raven Doc这样的文档的事件。但无法生成增量ID。有没有解决方法呢? ?
public class Product
{
public string Id {get; set;}
public int OtherIncrementalId {get; set;}
}
答案 0 :(得分:1)
基于类型的自定义ID生成的文档: https://ravendb.net/docs/article-page/4.0/csharp/client-api/configuration/identifier-generation/type-specific
如果你想为我尝试过的所有类型自定义id生成,它可以工作:
documentStore.Conventions.RegisterAsyncIdConvention<object>((dbname, obj) =>
{
return Task.FromResult(DocumentConventions.DefaultGetCollectionName(obj.GetType())+"/"+ YourCustomFunctionToGetNextId());
});