Jak aplikace ASP.NET použít k indexování katalogu dotazu pomocí Visual C# .NET

Překlady článku Překlady článku
ID článku: 820983 - Produkty, které se vztahují k tomuto článku.
Microsoft Visual Basic .NET verzi tohoto článku naleznete 820105.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Tento podrobný článek popisuje vytvoření indexování katalogu. Tento článek také popisuje způsob použití ASP.NET webové aplikace katalogy indexování dotazu.

Vytvořte testovací složku

  1. Vytvoření nové složky na jednotce C: počítače. Název složky myCatalogFolder.
  2. Spusťte textový editor, například Poznámkový blok a vložte následující text do prázdného dokumentu:
    Toto je zkušební dokument testování dotazu serveru index a tento název souboru je IndexText.text.
  3. Uložte soubor jako C:\myCatalogFolder\IndexText.txt.

Vytvořit indexování katalogu

  1. Klepněte na tlačítko Start, klepněte na příkaz Spustit, zadejte příkaz compmgmt.msc a klepněte na tlačítko OK.
  2. Rozbalte položku služby a aplikace.
  3. Indexování klepněte pravým tlačítkem myši, přejděte na příkaz Nový a potom klepněte na položku katalog.
  4. Do textového pole název zadejte TestCatalog.
  5. Klepněte na tlačítko Procházet vyhledejte složku, kam chcete umístit do katalogu a potom dvakrát klepněte na tlačítko OK.
  6. Ve skupinovém rámečku Nový katalog vytvořeno, zobrazí se následující zpráva:
    Katalog zůstane offline, dokud nebude po restartování služby indexování
    Klepněte na tlačítko OK.
  7. Klepněte pravým tlačítkem myši Indexování a potom klepněte na tlačítko Ukončit ukončíte službu indexování.
  8. Klepněte pravým tlačítkem myši Indexování a potom klepněte na tlačítko Start restartovat službu indexování.

Definování oboru katalogu.

Po vytvoření nového katalogu přidat složky, které chcete zahrnout do oboru katalogu. Obor je sada složek, který je zahrnut v katalogu a vyloučeny z katalogu. Definuje obor, který je zahrnut v indexu a vyloučeny z indexu obsahu. Pro každou složku, která zahrnuty nebo vyloučeny jsou všechny její podsložky také zahrnuty nebo vyloučeny.
  1. Poklepejte na TestCatalog (katalog vytvořili v části "Vytvořit Test Folder").
  2. Klepněte pravým tlačítkem myši adresářů, přejděte na příkaz Nový a pak klepněte na příkaz adresář.
  3. Klepněte na tlačítko Procházet, vyhledejte a klepněte na složku, kterou chcete přidat (C:\myCatalogFolder\) a potom klepněte na tlačítko OK.

    Poznámka: Ve skupinovém rámečku zahrnout do indexu?, klepněte na tlačítko Ano.

Vytvořit webovou aplikaci ASP.NET

  1. Spusťte aplikaci Visual Studio .NET.
  2. Vytvoření nového použít Visual C# .NET ASP.NET Web Application projektu. Název projektu IndexQueryApp. Ve výchozím nastavení je vytvořen WebForm1.aspx.
  3. V návrhovém zobrazení formulář WebForm1 klepněte pravým tlačítkem myši a potom klepněte na příkaz Zobrazit zdrojový HTML.
  4. Replace the existing HTML code with following sample code:
    <%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="IndexQueryApp.WebForm1" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
    <HTML>
       <HEAD>
          <title>WebForm3</title>
          <meta name="GENERATOR" Content="Microsoft Visual Studio 7.0">
          <meta name="CODE_LANGUAGE" Content="C#">
          <meta name="vs_defaultClientScript" content="JavaScript">
          <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
       </HEAD>
       <body MS_POSITIONING="GridLayout">
          <form id="WebForm3" method="post" runat="server">
             <asp:TextBox id="TextBox1" style="Z-INDEX: 101; LEFT: 90px; POSITION: absolute; TOP: 136px" runat="server"></asp:TextBox>
             <asp:DataGrid id="DataGrid1" style="Z-INDEX: 102; LEFT: 328px; POSITION: absolute; TOP: 138px" runat="server"></asp:DataGrid>
             <asp:Button id="Button1" style="Z-INDEX: 103; LEFT: 92px; POSITION: absolute; TOP: 199px" runat="server" Text="Button"></asp:Button>
          </form>
       </body>
    </HTML>
  5. V aplikaci Solution Explorer klepněte pravým tlačítkem myši na formulář WebForm1 a potom klepněte na tlačítko Zobrazit kód. Nahradit existující kód následující ukázkový kód:
    using System;
    using System.Data;
    
    namespace IndexQueryApp
    {
       public class WebForm1 : System.Web.UI.Page
       {
          protected System.Web.UI.WebControls.TextBox TextBox1;
          protected System.Web.UI.WebControls.DataGrid DataGrid1;
          protected System.Web.UI.WebControls.Button Button1;
       
    		private void Page_Load(object sender, System.EventArgs e)
    		{
    			// Put user code to initialize the page here.
    		}
    
    		#region Web Form Designer generated code
    		override protected void OnInit(EventArgs e)
    		{
    			//
    			// CODEGEN: The ASP.NET Web Form Designer requires this call.
    			//
    			InitializeComponent();
    			base.OnInit(e);
    		}
    		
    		/// <summary>
    		/// Required method for Designer support - do not modify
    		/// the contents of this method by using the code editor.
    		/// </summary>
    		private void InitializeComponent()
    		{     
                                 this.Button1.Click += new System.EventHandler(this.Button1_Click);
                                 this.Load += new System.EventHandler(this.Page_Load);
                              }
    		#endregion
    
          private void Button1_Click(object sender, System.EventArgs e)
          {
             // Catalog Name
             string strCatalog = "TestCatalog";
             string strQuery="";
    
             strQuery = "Select DocTitle,Filename,Size,PATH,URL from Scope()  where FREETEXT('" +TextBox1.Text+ "')";
              // TextBox1.Text is the word that you type in the text box to query by using Indexing Service.
    
             string connstring = "Provider=MSIDXS.1;Integrated Security .='';Data Source="+strCatalog;
    
             System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection(connstring);      
             conn.Open();
    
             System.Data.OleDb.OleDbDataAdapter cmd = new System.Data.OleDb.OleDbDataAdapter(strQuery, conn);
    		
             System.Data.DataSet testDataSet = new System.Data.DataSet();
    		
             cmd.Fill(testDataSet, "SearchResults");
             DataView source = new DataView(testDataSet.Tables[0]);
             DataGrid1.DataSource = source;
             DataGrid1.DataBind();
          }     
      }
    }
    
  6. V nabídce vytvořit klepněte na příkaz Sestavit řešení.

Spuštění aplikace

  1. V nabídce Debug klepněte na tlačítko Start spustit aplikaci.
  2. Do textového pole zadejte slovo dotazu dokumentu. (Můžete zadat libovolné slovo ze souboru IndexText.txt.)
  3. Klepněte na tlačítko. Všimněte si, že mřížky dat se zobrazí a obsahuje výsledky dotazu z IndexText.txt souboru.

Poradce při potížích

Počkejte indexu být vytvořena

Služba Indexing Service automaticky zpracuje TestCatalog a připraví seznam slov pro indexování. Při spustit ukázkový kód můžete není obdržet výsledky jako rychle očekávaným způsobem, protože indexování vyžaduje některé čas sestavení indexu.

Ověřte stav indexu spustit klepnutím Computer Management MMC snap-in. Indexování v pravém podokně a potom ověřte, zda je hodnota Seznamu slov TestCatalog větší než nula. Pokud Word seznam je hodnota nula, počkejte indexu k sestavení seznamu.

Data indexu mohou byly poškozeny

Pokud hledání nevrátí očekávané výsledky při dotazu index, data indexu mohou byly poškozeny. Tento problém vyřešit, zastavte a restartujte službu Indexing Service indexovat všechny dokumenty znovu. Postupujte takto:
  1. Klepněte na tlačítko Start, přejděte na příkaz Nastavení a klepněte na položku Ovládací panely.
  2. Poklepejte na panel Nástroje pro správu a poklepejte na ikonu Správa počítače.
  3. Ve stromu konzoly poklepejte na položku služby a aplikace.
  4. Klepněte pravým tlačítkem myši Indexování a klepněte na tlačítko Zastavit.
  5. Klepněte pravým tlačítkem myši znovu Indexování a potom klepněte na tlačítko Spustit.

Odkazy

Další informace o službě indexování naleznete na následujícím webu:
http://msdn2.microsoft.com/en-us/library/ms689644.aspx
Další informace naleznete v následujících článcích znalostní báze Microsoft Knowledge Base:
311521Jak indexu obsahu ASP.NET pomocí serveru Index
Další informace naleznete následujícím článku znalostní databáze Microsoft Knowledge Base:
308202Jak vytvořit a konfigurovat katalogu pro indexování


Vlastnosti

ID článku: 820983 - Poslední aktualizace: 12. ledna 2007 - Revize: 3.4
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
  • Microsoft Visual C# .NET 2003 Standard Edition
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft Windows Indexing Service 2.0
Klíčová slova: 
kbmt kbquery kbservice kbdatabinding kbdataadapter kbwebserver kbwebforms kbhowtomaster KB820983 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:820983

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com