Visual C#. NET'i kullanarak bir dizin oluşturma hizmeti katalog sorgulanamıyor bir ASP.NET uygulamasının nasıl kullanılır

Makale çevirileri Makale çevirileri
Makale numarası: 820983 - Bu makalenin geçerli olduğu ürünleri görün.
Bu makalenin Microsoft Visual Basic .NET sürümü için bkz: 820105.
Hepsini aç | Hepsini kapa

Bu Sayfada

Özet

Bu adım adım makalede, bir dizin oluşturma hizmeti Katalog oluşturma açıklanmaktadır. Bu makalede ayrıca bir ASP.NET Web kullanmayı açıklamaktadır sorgu Hizmeti'nin kataloglara uygulama.

Bir sınama klasörü oluşturun

  1. Bilgisayarın C sürücüsünde yeni bir klasör olu?turun Klasör myCatalogFolder adı.
  2. Not Defteri gibi bir metin düzenleyicisini başlatın ve aşağıdaki metni boş bir belgeye yapıştırın:
    Bu dizin sunucusu sorguyu sınamak için bir sınama belgesi ve bu dosya adı IndexText.text.
  3. Dosyayı C:\myCatalogFolder\IndexText.txt kaydedin.

Bir dizin oluşturma hizmeti Katalog oluşturma

  1. Başlat ' ı tıklatın, Çalıştır ' ı tıklatın, compmgmt.msc yazın ve Tamam ' ı tıklatın.
  2. Hizmetler ve uygulamalar'ı genişletin.
  3. Dizin oluşturma hizmeti sağ tıklatın, Yeni ' nin üzerine gelin ve Kataloğu</a1>'ı tıklatın.
  4. Ad metin kutusuna TestCatalog yazın.
  5. Gözat ' ı tıklatın, kataloğa koymak istediğiniz klasörü bulun ve sonra da iki kez Tamam ' ı tıklatın.
  6. Altında Yeni katalog oluşturuldu, aşağıdaki iletiyi alırsınız:
    Dizin hizmeti yeniden başlatılıncaya kadar katalog çevrimdışı kalacak
    Tamam ' ı tıklatın.
  7. Dizin oluşturma hizmeti sağ tıklatın ve sonra da <a2>Dizin Oluşturma Hizmeti'ni durdurmak için Durdur</a2>'ı tıklatın.
  8. Dizin Oluşturma Hizmeti'ni ' ı sağ tıklatın ve sonra da <a2>dizin oluşturma hizmeti yeniden Başlat</a2>'ı tıklatın.

Kataloğun kapsamını tanımla

Yeni bir katalog oluşturduktan sonra kataloğa kapsamında eklemek istediğiniz klasörleri ekleyin. Katalogta gelen ve katalogdan dışlanan klasörler kümesi kapsamdır. Kapsam, dizinde bulunan ve dizinden dışlanan içeriği tanımlar. Eklenen veya dışlanan her klasör için tüm alt klasörlerini de dahil dışlanan veya.
  1. TestCatalog ("Test klasör oluşturma" bölümünde oluşturduğunuz katalog) çift tıklatın.
  2. Dizin ' i sağ tıklatın, Yeni ' nin üzerine gelin ve sonra dizin ' i tıklatın.
  3. Gözat ' ı tıklatın, bulun (C:\myCatalogFolder\) eklemek istediğiniz klasörü tıklatın ve sonra Tamam ' ı tıklatın.

    Not Altında Dizin Ekle?, Evet ' i tıklatın.

Bir ASP.NET Web uygulaması yaratın

  1. Microsoft Visual Studio .NET'i başlatın.
  2. Yeni oluşturmak için Visual C#. NET'i kullanmak ASP.NET Web uygulaması proje. IndexQueryApp projenin adı. Varsayılan olarak, WebForm1.aspx oluşturulur.
  3. Tasarım görünümünde WebForm1 ' ı sağ tıklatın ve sonra da HTML Kaynağı Göster'i tıklatın.
  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. Solution Explorer'da (Çözüm Gezgini), WebForm1 ' ı sağ tıklatın ve Kod Görüntüle</a1>'ı tıklatın. Varolan kod aşağıdaki örnek kodla değiştirin:
    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. Yapı) menüsünde tıklatın Build Solution.

Uygulamayı çalıştırma

  1. Hata Ayıkla) menüsünde, uygulamayı çalıştırmak için Başlat ' ı tıklatın.
  2. Sorgu sözcüğü belge metin kutusuna yazın. (Herhangi bir sözcük IndexText.txt dosyasından yazabilirsiniz.)
  3. Düğmesini tıklatın. Veri Kılavuzu belirir ve IndexText.txt sorgu sonuçlarını içeren bir bildirim dosyası.

Sorun Giderme

Dizini oluşturulacak bekleyin.

Dizin oluşturma hizmeti otomatik olarak TestCatalog işler ve bir sözcük listesi, dizin oluşturma için hazırlar. Örnek kodu çalıştırdığınızda, sonuçlar biraz zaman Dizin Oluşturma Hizmeti'nin gerektirdiği için beklendiği gibi çabuk alamayabilir.

Dizin durumunu doğrulamak için <a0></a0>, bilgisayar yönetimi MMC ek bileşenini tıklatarak başlatmak sağ bölmede, Dizin Oluşturma Hizmeti'ni ve TestCatalog için Word liste değeri sıfırdan büyük olduğunu doğrulayın. Word listesi değeri sıfırdır, liste oluşturmak dizin için bekleyin.

Dizin verileri bozulmuş olabilir

Dizin sorguladığınızda arama beklenen arama sonuçları döndürmezse, dizin verileri bozulmuş olabilir. Bu sorunu gidermek için <a0></a0>, durdurun ve sonra da tüm belgeleri yeniden dizin oluşturmak için Dizin Oluşturma Hizmeti'ni yeniden başlatın. Bunu yapmak için şu adımları izleyin:
  1. Başlat ' ı tıklatın, Ayarlar ' ın üzerine gelin ve sonra Denetim Masası ' nı tıklatın.
  2. Yönetimsel Araçlar ' ı çift tıklatın ve sonra Bilgisayar Yönetimi ' ni çift tıklatın.
  3. Konsol ağacında, Hizmetler ve uygulamalar'ı çift tıklatın.
  4. Dizin oluşturma hizmeti sağ tıklatın ve sonra da <a2>Durdur</a2>'ı tıklatın.
  5. Dizin Oluşturma Hizmeti'ni yeniden sağ tıklatın ve sonra da <a2>Başlat</a2>'ı tıklatın.

Referanslar

Dizin Oluşturma Hizmeti hakkında daha fazla bilgi için aşağıdaki Microsoft Web sitesini ziyaret edin:
http://msdn2.microsoft.com/en-us/library/ms689644.aspx
Daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleleri görüntülemek üzere aşağıdaki makale numaralarını tıklatın:
311521Nasıl yapılır: Microsoft ındex Server'ı kullanarak ASP.NET içerik dizini
Daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
308202Nasıl oluşturulacağı ve bir katalog için dizin oluşturmayı yapılandır


Özellikler

Makale numarası: 820983 - Last Review: 12 Ocak 2007 Cuma - Gözden geçirme: 3.4
Bu makaledeki bilginin uygulandığı durum:
  • 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
Anahtar Kelimeler: 
kbmt kbquery kbservice kbdatabinding kbdataadapter kbwebserver kbwebforms kbhowtomaster KB820983 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:820983

Geri Bildirim Ver

 

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