如何:返回搜索服务提供程序的搜索上下文
编写代码来以编程方式配置 Microsoft Office SharePoint Server 2007 企业级搜索时,应使用 SearchContext 类作为企业级搜索管理对象模型的入口点。若要在共享服务提供程序 (SSP) 管理级别配置企业级搜索设置,则必须为搜索服务的 SSP 检索搜索上下文。
若要访问搜索上下文,请使用 SearchContext 类的 GetContext() 方法。GetContext 方法有三个重载;调用此方法时,必须将以下一项作为参数传递:
SSP 应用程序名称
使用 ServerContext 类访问搜索上下文
在 Visual Studio 2005 的“项目”菜单上单击“添加引用”。
在“.NET”选项卡上选择以下每个引用,并在每次选择后都单击“确定”
Microsoft.Office.Server.dll
Microsoft.Office.Server.Search.dll
在代码顶部附近添加以下命名空间指令。
using Microsoft.Office.Server; using Microsoft.Office.Server.Search.Administration;
将以下内容添加到代码中需要访问搜索上下文的部分。
SearchContext srchContext = SearchContext.GetContext(ServerContext.Current);
使用 SPSite 类访问搜索上下文
在 Visual Studio 2005 的“项目”菜单上单击“添加引用”。
在“.NET”选项卡上选择以下每个引用,并在每次选择后都单击“确定”
Microsoft.SharePoint.dll
Microsoft.Office.Server.Search.dll
在代码顶部附近添加以下命名空间指令:
using Microsoft.SharePoint; using Microsoft.Office.Server.Search.Administration;
将以下内容添加到代码中必须访问搜索上下文的部分(将 yourSiteName 替换为您的网站名称)。
SearchContext srchContext; using (SPSite site = new SPSite("http://yourSiteName")) { srchContext = SearchContext.GetContext(site); }
备注
在使用 SPSite 类时,我们建议您使用与上一步中的代码相同的方法,以避免出现内存使用问题。
对于 GetContext 方法的第三个重载,在调用方法之前必须确定提供搜索服务的 SSP 的应用程序名称。
使用共享服务提供程序应用程序名称访问搜索上下文
在 Visual Studio 2005 的“项目”菜单上单击“添加引用”。
在“.NET”选项卡上选择以下每个引用,并在每次选择后都单击“确定”。
Microsoft.Office.Server.dll
Microsoft.Office.Server.Search.dll
在代码顶部附近添加以下命名空间指令。
using Microsoft.Office.Server.Search.Administration;
将以下内容添加到代码中需要访问搜索上下文的部分(将 SSP_GUID 替换为包含承载搜索服务的 SSP 的应用程序 GUID 的字符串)。
SearchContext srchContext = SearchContext.GetContext("SSP_GUID");