我开始玩RavenDB(到目前为止看起来真的很棒).但是我不得不尝试以下方法.
我存储了一个像这样的新文档
Product p = new Product() { Title = "My Fancy Product" };
RavenSession.Store(p);
Run Code Online (Sandbox Code Playgroud)
现在我想获得新存储文档的Id.谁能做到这一点?只是p.Id在商店似乎没有工作后访问...
提前致谢!
Dar*_*rov 10
类的Id属性Product必须是类型string而不是整数.
然后,您将能够在操作后检索自动生成的ID:
Product p = new Product() { Title = "My Fancy Product" };
RavenSession.Store(p);
string id = p.Id;
Run Code Online (Sandbox Code Playgroud)
更多信息可以在documentation(Document IDs部分)中找到:
在上面的示例中,我们为BlogPost提供了一个字符串Id属性,并将其留空.此属性将用作此文档的"主键".请注意RavenDB如何为我们生成一个ID,"BlogPosts/1",基于我们将在一秒钟内讨论的默认约定.
如果文档上没有Id属性,RavenDB仍将生成唯一ID,但只能通过调用session.Advanced.GetDocumentId(object)来检索它.换句话说,拥有Id属性是完全可选的,因此只有在需要更容易访问此信息时才能显式定义此类属性.
| 归档时间: |
|
| 查看次数: |
2097 次 |
| 最近记录: |