Exportieren und Importieren von Konfigurationseinstellungen für Suche in SharePoint
Rufen Sie Codebeispiele, die Ihnen zeigen, wie exportieren und importieren angepasster suchkonfigurationseinstellungen. Dazu gehören alle benutzerdefinierten Abfrageregeln, ergebnisquellen, Ergebnistypen, Bewertungsmodelle und Website für die Suche. SharePoint macht diese Funktionalität über den Microsoft.Office.Server.Search.Portability-Namespace verfügbar. Sie können auch benutzerdefinierte Suchkonfigurationseinstellungen aus einer Suchdienst-Anwendung (SSA) exportieren und die Einstellungen in Websitesammlungen und Websites importieren.
Hinweis
Sie können benutzerdefinierte Suchkonfigurationseinstellungen nicht in eine SSA importieren oder die standardmäßigen Suchkonfigurationseinstellungen exportieren.
Exportieren von Suchkonfigurationseinstellungen
Der folgende Code zeigt, wie Sie SearchConfigurationPortability verwenden, um die Suchkonfigurationseinstellungen Ihrer Website zu exportieren. Der Code verwendet eine Beispielwebsite http://yoursite/sites/publishing1
, die Sie durch Ihre eigene Website ersetzen. fileName bezieht sich auf die Datei mit den Suchkonfigurationseinstellungen; owner gibt die SPWeb-Ebene an, auf der die Suchkonfigurationseinstellungen abgerufen werden.
private static void Export(string fileName)
{
SPSite site = new SPSite("http://yoursite/sites/publishing1");
SearchConfigurationPortability conf = new SearchConfigurationPortability(site);
SearchObjectOwner owner = new SearchObjectOwner(SearchObjectLevel.SPWeb, site.OpenWeb());
var buff = conf.ExportSearchConfiguration(owner);
File.WriteAllText(fileName, buff);
site.Close();
}
Importieren von Suchkonfigurationseinstellungen
Der folgende Code zeigt, wie Suchkonfigurationseinstellungen mithilfe von SearchConfigurationPortability aus einer Datei importiert und die vorhandenen Sucheinstellungen auf einer angegebenen Website ersetzt werden http://yoursite/sites/publishing1
. fileName bezieht sich auf die Datei mit den Suchkonfigurationseinstellungen; owner gibt die SPWeb-Ebene an, auf der die Suchkonfigurationseinstellungen abgerufen werden.
private static void Import(string fileName)
{
SPSite site = new SPSite("http://yoursite/sites/publishing1");
SearchConfigurationPortability conf = new SearchConfigurationPortability(site);
SearchObjectOwner owner = new SearchObjectOwner(SearchObjectLevel.SPWeb, site.OpenWeb());
conf.ImportSearchConfiguration(owner, File.ReadAllText(fileName));
site.Close();
}