RavenDB:在Raven 4.0中将自动增量添加到除ID之外的其他属性

时间:2018-05-30 12:49:19

标签: c# asp.net ravendb auto-increment

在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;} 
    }

1 个答案:

答案 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());
 });