2016-06-10 2 views
2

Я использую ASP.NET 4.6.1 в Windows Server 2008 r2 с помощью сервера индексирования.Microsoft Search Server или Microsoft Search Service в ASP.NET

Я использую Microsoft OLE DB Provider для службы индексирования Microsoft, тот же провайдер MSIDXS

Теперь я хочу использовать Windows Server 2012 R2. не

Indexing Service больше не поддерживается в Windows XP и недоступны для использования в качестве в Windows 8. Вместо использования Windows Search для стороне клиента поиска и Microsoft Search Server Express для серверной стороны поиска.

Как использовать использование Microsoft Search в ASP.NET?

Я запутался: Я использую для Windows Search Server или Windows Search Service?

Какой Поставщик OLE DB не требуется?

Как установить Windows Search Server?

Как установить Служба поиска 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(); 

ответ

0

Я запутался: Я использую для Windows Search Server или Windows, службы поиска?

Вы используете поиск индексирования (https://msdn.microsoft.com/en-us/library/ee805985(v=vs.85).aspx).

Какой поставщик OLE DB требуется?

Для использования службы поиска Windows используйте «Provider = Search.CollatorDSO; Расширенные свойства =« Приложение = Windows »; Источник данных = (локальный);»

Как установить Windows Search Server?

Для использования Windows Search Server вы должны загрузить и установить Microsoft Search Server (на основе sharepoint) https://www.microsoft.com/en-us/download/details.aspx?id=18914.

Смежные вопросы