【问题标题】:Using polymorphic queries over interfaces in RavenDB在 RavenDB 的接口上使用多态查询
【发布时间】:2011-11-17 02:38:44
【问题描述】:

我有兴趣切换我们的应用程序(或部分应用程序)以使用带有 NHibernate 的 SQL Server 中的 RavenDB。

我在 Raven 中似乎找不到的关键功能是使用接口进行查询,例如:

ISearchable
{
  string Name {get;set;}
}

Class1 : ISearchable
{
  string Name {get;set;}
}
Class2 : ISearchable
{
   string Name {get;set;}
}

在 NH 中,我可以在任何 ISearchable 中搜索名称字段的内容:QueryOver<ISearchable>()

我似乎在 Raven 中找不到这个,我错过了什么吗?我发现的最接近的是更改标识符前面的字符串部分,我不想这样做; Class1和Class2的主要功能是不可搜索!

谢谢

学习

【问题讨论】:

    标签: c# database nosql ravendb document-database


    【解决方案1】:

    定义如下索引:

    // ByName
    from doc in docs
    select new { doc.Name }
    

    session.Query("ByName");

    【讨论】:

    • 如何在C#中定义这样的索引?实际上 IndexDefinitionBuilder 使用什么 TDocument 来查询“in docs”而不是“in docs.TDocument”?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多