我在ASP.NET MVC应用程序中使用Solr和Solrnet进行一些简单的方案。对于一对一的映射,我在其中映射一个Poco到一个文档,一切正常 非常 顺利。但是,我想知道是否可以按以下内容绘制更复杂的方案。本质上,我有一个包含儿童拍卖的拍卖类

    public class Auction
    {
      public virtual int ID { get; set; }
      public virtual string Name { get; set; }
      public virtual AuctionItem {get;set;} 
      public virtual DateTime StartDate { get; set; }
      public virtual DateTime EndDate { get; set; }
    }


    public class AuctionItem 
    {
      public virtual int ID { get; set; }
      public virtual string ItemName{ get; set; } 
      public virtual string ItemDescription{ get; set; }
      public virtual Double ItemPrice{get;set;} 
    }

显然,我可以在代码中使用属性映射拍卖项,但是我想知道如何在Solr文档中包括ItemName/ItemDescription/itemPrice。显然,这里的希望不是将我的对象图弄平。有没有办法实现这一目标?

有帮助吗?

解决方案

目前是 公开问题 (意思就是 有机会实施它! ;-)

无论如何,我建议您弄平您的课程,这样,只有一张桌子就更明确了。用 Solr Wiki:

Solr提供一张表。将设定的数据库表存储在索引中通常需要将某些表不合规。试图避免规范化通常失败。

其他提示

我们解决了[jsonignore]和简单的getter创建分组对象的问题:

public class Company
{
    /// <summary>
    /// Company location
    /// </summary>
    public Location Location => new Location(Latitude, Longitude);

    // hide from json, but retrieve from solr
    [JsonIgnore, SolrField("latlng_0_coordinate")]
    public double Latitude { get; set; }

    // hide from json, but retrieve from solr
    [JsonIgnore, SolrField("latlng_1_coordinate")]
    public double Longitude { get; set; }
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top