検索クエリ データベースとして SOLR を使用しています。SOLR のノード内で複数のノード (コレクション) をバインドする際に問題に直面しています。誰でも同じスキーマを教えてもらえますか。
マイ ドキュメントは次のとおりです。
namespace SOLRApp
{
public class Table1Document
{
public Table1Document()
{
MobileNos = new List<int>();
EducationalDetails = new List<EducationalDetails>();
}
[SolrField("FirstName")]
public string FirstName { get; set; }
[SolrField("MobileNos")]
public List<int> MobileNos { get; set; }
[SolrField("EducationalDetails")]
public List<EducationalDetails> EducationalDetails { get; set; }
}
public class EducationalDetails
{
public EducationalDetails()
{
Details = new List<Details>();
}
public List<Details> Details { get; set; }
}
public class Details
{
[SolrField("IntitutionName")]
public string IntitutionName { get; set; }
[SolrField("EnrollDate")]
public DateTime EnrollDate { get; set; }
[SolrField("PassoutDate")]
public DateTime PassoutDate { get; set; }
[SolrField("InstituteRating")]
public int InstituteRating { get; set; }
}
}
私のスキーマファイルは以下のとおりです。
<field name="FirstName" type="string" indexed="true" stored="true"/>
<field name="MobileNos" type="string" indexed="true" stored="true" multiValued="true" />
<field name="EducationalDetails" type="EducationalDetails" indexed="true" stored="true" multiValued="true">
<field name="Details" type="string" indexed="true" stored="true" multiValued="true">
<field name="IntitutionName" type="string" indexed="true" stored="true"/>
<field name="EnrollDate" type="date" indexed="true" stored="true"/>
<field name="PassoutDate" type="date" indexed="true" stored="true"/>
<field name="InstituteRating" type="string" indexed="true" stored="true"/>
</field>
</field>
私の主な質問は、「EducationalDetails」ノードのタイプは何になるかということです。これは私にエラーを与えます
Cannot initialize type 'SOLR.EducationalDetails' with a collection initializer because it does not implement 'System.Collections.IEnumerable'.
SOLR でユーザー定義のデータ型を追加する方法を知りたいです。私の例のように、「EducationalDetails」はユーザー定義のデータ型 (クラス) です。それをSOLRに追加する方法を教えてください。
前もって感謝します。