我在Windows Server 2008 R2中使用索引服務器中的ASP.NET 4.6.1。ASP.NET中的Microsoft Search Server或Microsoft搜索服務
我用Microsoft OLE DB提供對Microsoft索引服務,同樣提供MSIDXS
現在,我要使用Windows Server 2012 R2。
索引服務不再支持Windows XP中的,是 無法使用與Windows 8的相反,使用Windows搜索 客戶端搜索和Microsoft Search Server Express的服務器端 搜索。
如何在ASP.NET中使用Microsoft Search?
我很困惑:我使用Windows搜索服務器或Windows搜索服務?
其中OLE DB提供商是必填項?
如何安裝Windows搜索服務器?
如何安裝Windows搜索服務? (可能是Windows 2012 R2中的功能)
下載和安裝Windows Search Server不會安裝 OLE DB提供程序。安裝Windows SDK也沒有。安裝Windows搜索服務時安裝提供程序 。
在Win7/8桌面操作系統,這是安裝默認(我相信)。在 服務器Windows Server 2012上,您必須啓用該功能。
使用索引服務器在Windows 2008 R2 + ASP.NET我的代碼:
// Catalog Name
string strCatalog = txtNombreCatalogo.Text;
string strQuery = "";
strQuery = "Select DocTitle,Filename,Size,PATH,URL";
strQuery += ", DocAuthor, vpath, Write, Rank, Create, Characterization, DocCategory";
strQuery += " from Scope() where FREETEXT('" + txtNombreFichero.Text + "')";
// txtNombreFichero.Text is the word that you type in the text box to query by using Indexing Service.
string connstring = "Provider=MSIDXS;Integrated Security .='';Data Source=" + strCatalog;
//connstring = "Provider=MSIDXS.1;Integrated Security .='';Data Source=" + strCatalog;
var conn = new System.Data.OleDb.OleDbConnection(connstring);
conn.Open();
var cmd = new System.Data.OleDb.OleDbDataAdapter(strQuery, conn);
var testDataSet = new System.Data.DataSet();
cmd.Fill(testDataSet, "SearchResults");
DataView source = new DataView(testDataSet.Tables[0]);
dgResultados.DataSource = source;
dgResultados.DataBind();