Tag: ravendb

在RavenDB中按ID排序

有没有办法让Raven通过Id字段对查询结果进行排序,就好像它是整数一样。 因此,如果我执行此查询,“cars / 2”会出现在“cars / 11”之前: var cars = session.Query().OrderBy(c => c.ID);

RavenDB动态对象

我的代码看起来像这样: using (var session = DocumentStore.OpenSession()) { var dbItem = session.Load(item.Id); if (dbItem is DynamicJsonObject) { dbItem[“PropertyName”] = “new value”; } session.SaveChanges(); } 我无法弄清楚的是如何更新dbItem的属性。 有谁知道该怎么办? 我试过直接访问属性名称,如下所示:dbItem.PropertyName我也试过转换为ExpandoObject,IDictionary等。 但似乎没有任何效果。

Raven DB – 让它自动生成自己的密钥

我目前有一个具有名为Id的公共属性的对象。 当我存储对象时,我希望Id成为数据的一部分,而不是像目前那样成为文档ID。 创建文档存储时,我只设置连接字符串。 using (var session = documentStore.OpenSession()) { session.Store(a); session.SaveChanges(); } a can be thought of an object as: public class A { public Guid Id { get; set; } //other properties } 所以要么我想要它生成一个随机Id,要么让数据和documentId都是A类的Id属性。 编辑: 所以有两种可能:1。文件ID = Id和 Data Section contains: { data //sorry if the notation is not correct, doing it off of […]

RavenDB会话> 30

如果我想保存一个我要保存的项目列表,其数量> 30,我会收到错误消息 已达到此会话允许的最大请求数(30)。 Raven限制了允许会话作为预警系统进行的远程调用的数量。 会话预计会很短暂,并且Raven提供诸如Load(string []键)之类的工具来一次加载多个文档并批量保存。 我该怎么做才能解决这个问题? 这个错误的问题是我没有加载,我正在尝试保存文档。 任何想法,将不胜感激。 谢谢

是否可以使用C#与OrientDB一起使用?

是否有任何实现,api或OrientDB和C#的例子。 我正在研究OrientDB的原因是因为它是我发现的唯一一个Graph和Document的组合。 关于我应该怎么做的任何建议。 我的下一个选择是RavenDB,但我不确定它是否支持连接或链接文档? 有什么想法吗…

Ravendb mapreduce按多个字段分组

我们有一个包含流媒体video的网站,我们希望在上周,月份和年份(滚动窗口)显示三个最受关注video的报告。 每次观看video时,我们都会在ravendb中存储文档: public class ViewedContent { public string Id { get; set; } public int ProductId { get; set; } public DateTime DateViewed { get; set; } } 我们在确定如何定义最能支持生成这三个报告的索引/ mapreduces时遇到了麻烦。 我们尝试了以下map / reduce。 public class ViewedContentResult { public int ProductId { get; set; } public DateTime DateViewed { get; set; } public int Count { […]

RavenDB附件 – function怎么办?

我有一个文件输入控件。 让我们说我浏览到C:/Instruction.pdf文档并单击提交。 在提交时,我想将文档保存在RavenDB中,稍后将其检索以供下载。 我看到这个链接http://ravendb.net/docs/client-api/attachments说…做这个.. Stream data = new MemoryStream(new byte[] { 1, 2, 3 }); documentStore.DatabaseCommands.PutAttachment(“videos/2”, null, data, new RavenJObject {{“Description”, “Kids play in the garden”}}); 我不遵循1,2,3这里的含义以及在命令中说video/ 2意味着什么…我如何使用这两行在我的情况下使用它…在ravendb中保存word / pdfs。如果有人以前做过这样的事情,请告知。 我不清楚一件事……如何存储附件。 如果我想存储附件本身(比如pdf),它会独立存储在ravendb ..我只是将附件的密钥存储在与之关联的主文档中? 如果是这样,pdf在物理上存储在ravendb中的哪个位置? 我可以看吗?

使用RavenDB实现存储库和服务模式

我在RavenDB项目中实现存储库和服务模式有些困难。 主要关注的是我的存储库界面应该是什么样子,因为在RavenDB中我使用了几个索引来查询。 假设我需要获取parentid等于1的所有项目。一种方法是使用IQueryable List()并获取所有文档,然后添加一个where子句来选择parentid等于1的项目。这似乎是一个坏主意因为我无法在RavenDB中使用任何索引function。 所以另一种方法是在存储库中有类似这样的东西,IEnumerable Find(字符串索引,Func谓词),但这似乎也是一个坏主意,因为它不够通用,并且要求我实现这个方法,如果我从RavenDB更改到一个常见的SQL服务器。 那么如何实现通用存储库,但仍然可以在RavenDB中获得索引的好处?

RavenDB中的子串搜索

我有一组Idea类型的对象 public class Idea { public string Title { get; set; } public string Body { get; set; } } 我想通过substring搜索这个对象。 例如,当我有标题“ 想法 ”的对象时,我希望在输入“ idea ”的任何子字符串时找到它: i,id,ide,idea,d,de,dea,e,ea,a 。 我正在使用RavenDB来存储数据。 搜索查询看起来像这样: var ideas = session .Query() .Where(x => x.Query.Contains(query)) .As() .ToList(); 索引如下: public class IdeaByBodyOrTitle : AbstractIndexCreationTask { public class IdeaSearchResult { public string Query; public […]

使用Raven DB的数据访问体系结构

我可以使用哪些数据访问体系结构与Raven DB一起使用? 基本上,我想通过接口分离持久性,所以我不会将下划线存储暴露给上层。 即我不希望我的域看到来自Raven DB的IDocumentStore或IDocumentSession 。 我已经实现了通用存储库模式,这似乎有效。 但是,我不确定这是否是正确的方法。 也许我会去命令查询隔离或其他什么? 你的想法是什么?