Sitecore CMS + DMS 6.6.0 rev.130404 => 7.0 rev.130424Upgrade Sitecore 6.6 Indexkonfiguration auf Sitecore 7 (mit ComputedFields)
In unserem Projekt haben wir AdvancedDatabaseCrawler (ADC) für unsere Indizes wurden unter Verwendung von (besonders wegen seiner dynamischen Felder Eigenschaft). Hier ist ein Beispiel Indexkonfiguration:
<index id="GeoIndex" type="Sitecore.Search.Index, Sitecore.Kernel">
<param desc="name">$(id)</param>
<param desc="folder">$(id)</param>
<analyzer ref="search/analyzer" />
<locations hint="list:AddCrawler">
<web type="scSearchContrib.Crawler.Crawlers.AdvancedDatabaseCrawler, scSearchContrib.Crawler">
<database>web</database>
<root>/sitecore/content/Globals/Locations</root>
<IndexAllFields>true</IndexAllFields>
<include hint="list:IncludeTemplate">
<!--Suburb Template-->
<suburb>{FF0D64AA-DCB4-467A-A310-FF905F9393C0}</suburb>
</include>
<dynamicFields hint="raw:AddDynamicFields">
<dynamicField type="OurApp.CustomSearchFields.SearchTextField,OurApp" name="search text" storageType="NO" indexType="TOKENIZED" vectorType="NO" />
<dynamicField type="OurApp.CustomSearchFields.LongNameField,OurApp" name="display name" storageType="YES" indexType="UN_TOKENIZED" vectorType="NO" />
</dynamicFields>
</web>
</locations>
</index>
Wie Sie sehen können, wir scSearchContrib.Crawler.Crawlers.AdvancedDatabaseCrawler
als Crawler verwenden, und es verwendet die innerhalb <dynamicFields hint="raw:AddDynamicFields">
Abschnitt definierte Felder benutzerdefinierte Felder in den Index zu injizieren.
Jetzt aktualisieren wir unser Projekt auf Sitecore 7. In Sitecore 7 haben sie die DynamicFields-Funktionalität von ADC in Sitecore portiert. Ich habe einige Artikel dazu gefunden und unsere benutzerdefinierten Suchfeldklassen konvertiert, um sitecore 7 IComputedIndexField
Schnittstelle zu implementieren, statt von BaseDynamicField
Klasse in ADC zu erben. Jetzt ist mein Problem, wie man die Indexkonfiguration ändert, um mit neuen sitecore 7 APIs übereinzustimmen. Es gab kleine Teile im Internet, aber ich konnte nicht alle Beispiele finden, die ich brauchte, um meine Konfiguration zu konvertieren. Kann mir jemand dabei helfen?
Während ich das mache, habe ich den Eindruck, dass wir unsere Indizes nicht neu erstellen müssen, da es Lucene intern verwendet. Ich möchte die Indexstruktur nicht ändern. Ich möchte nur den Code und die Konfiguration von AdvancedDatabaseCrawler auf Sitecore 7 aufrüsten. Sollte ich mir Sorgen machen, dass unsere bestehenden Indizes durchbrochen werden? Bitte werfen Sie auch etwas Licht darauf.
Dank
Vielen Dank Stephen! Ich habe es geschafft, die Konfigurationen zu konvertieren, indem ich auf Sitecore-Suchkonfigurationen schaute, die mit Sitecore und einigen Experimenten ausgeliefert wurden. Yeah IncludeTemplates ist defekt und ich werde auf 7.0 Update-3 upgraden. – ravinsp