yazgelistir.com
  Ana Sayfa   Forumlar Hakkımızda
  
Loading... Yükleniyor. Lütfen bekleyin ...
 Kategoriler
ASP.NET
ADO.NET
Visual Basic .NET
Visual C# .NET
Visual Studio ve Araçlar
Windows Server System
Office System
.NET Framework
SQL Server
XML Web Servisleri
Yazılım Güvenliği
Yazılım Mühendisliği
Mobil Teknolojileri
Dynamics
Smart Client
Expression Studio
Silverlight
Kod Parçaları
Açık Kaynak Kodlu Uygulamalar
İş Zekası
Windows Mobile Embedded

    0
Çıkış Yap
Üyelik Bilgilerimi Güncelle
Seminerlerim
Favorilerim
Ajanım

 Yazgeliştir
Yazar olmak ister misiniz?
Forumlar
Kitap Önerileri
Haberler
Yazarlar
İpuçları
Görüşleriniz
Hakkımızda

  İstatistikler
En son kayıt olan üye:
WASP35

Şuanki online üyeler ( 14 ) :
oylumnet , beytullahuzun , fathersedat , erenyetim , mr_kemal , murat_bayram , shots2killer , mathsdas , asmin8001 , april_0507 , ypervane , dincerdamla , RuyLopez , legatoo
 

DorukNet 
     ASP.NET Kategorisi  » Indexing Service Kullanarak, Dosyalarda Arama    

Indexing Service Kullanarak, Dosyalarda Arama

Print Versiyonu


 
Yazar: İncilay Çilesizoğlu

Tarih:18.09.2008

Puan:5 (Oy Kullanan:3)

Okuma Sayısı:214

  Makaleyi İşaretle


Makale Özeti
Web sitenizde, dosyaları yüklediğiniz ya da kullanıcıya yüklettiğiniz bir klasör var ve web sayfasından, bu klasörün içindeki dosyaların tipi(word, excel, pdf) ne olursa olsun, içeriğinde arama yapılmasını ve bulunan sonuç listesinden sayfalara ulaşılmasını istiyorsunuz. Bu makalede, Indexing Service kullanarak, dosya içeriğinde nasıl arama yapıldığı anlatılmaktadır.


Makale
Indexing Service Kullanarak, Dosyalarda Arama

Web sitenizde, dosyaları yüklediğiniz ya da kullanıcıya yüklettiğiniz bir klasör var ve web sayfasından, bu klasörün içindeki dosyaların tipi(word, excel, pdf) ne olursa olsun, içeriğinde arama yapılmasını ve bulunan sonuç listesinden sayfalara ulaşılmasını istiyorsunuz. Bu makalede, Indexing Service kullanarak, dosya içeriğinde nasıl arama yapıldığı anlatılmaktadır.



Indexing Service

Indexing service, dosya içerisinde içerik bulan ve hızlı ve etkin biçimde aramayı kolaylaştırmak için indekslenmiş katalog oluşturan bir servistir(Microsoft Windows 2000 ve sonrası için). Indexing Service, lokal ya da ağdaki bir bilgisayarda bulunan dosyaların içeriğindeki metine ve dosyaların özelliklerine ulaşabilir. Bu dosyalar web sitesinde yayınladığınız dosyalar da olabilir.

Indexing Service filtreleme yaparak içeriği bulur. Filtrelemede, dosyanın formatını anlayan filtreleme bileşenleri kullanılır. Format uluslararası dil ve yerel gibi çoklu dil özellikleri içerebilir. Filtreleme bileşeni, metni ve özelliği bulmak için dosyayı okuma metodlarını destekleyen Ifilter arabirimini sağlar. Windows 2000 ve Microsoft Windows XP, Microsoft Office dosyalarını, HTML dosyalarını, mail uzantılı mesajları ve düz metin dosyalarını filtrelemeyi destekler.

Indexing Server etkin arama için indekslenmiş katalogların içerisindeki bilgiyi birleştirir. Indexing, filtreleme, indeks kayıt yaratma ve birleştirme işlemlerinin tümünü katalogların içerisinde gerçekleştirir. Indexing işleminin son adımı kelimelerin ve konumlarının depolandığı ana indeks içeren bir katalog yaratmaktır.

Windows 2000 ve Windows XP, Indexing Service sorgulamak ve özelliklerini/durumunu yönetebilmek için temel olanaklar sağlar. Bu olanaklar;
  • Indexing Service çalışırken, arama için Indexing Service kataloğu kullanılabilir.
  • MMC de bulunan Indexing Service ek bileşeni ile, servis başlatılabilir, durdurulabilir, özellikler yönetilebilir.

Indexing Service Kurulumu

Index Service bilgisayarınıza kurmak için aşağıdaki yöntemi izleyebilirsiniz;

  • Start > Settings > Control Panel penceresini açınız
  • Add or Remove Programs > Add/Remove Windows Components tıkladığınızda Windows Components Wizard penceresi açılır
  • Bu pencereden Indexing Service bulup, işaretleyip, devam ederseniz, sihirbaz işlemi tamamlandığında, Indexing Service bilgisayarınıza kurulur.

 


Indexing Service Başlatma

Kurulum tamamlandığında, Computer Management (Start > Settings > Control Panel > Administrative Tools) penceresinden Indexing Service yönetebilirsiniz.

 

 

Indexing Service seçili iken sağ tıklayıp Start komutuna tıkladığınızda, size bir kereliğine bir soru yöneltilir, eğer bilgisayar açıldığında, servisin başlatılmasını istiyorsanız, Yes düğmesine tıklayın, bu işlemden sonra servis başlatılır.

Indexing Service Kataloğu Yaratma

Indexing Service kısa anlatımından sonra, örnekle birlikte Indexing Service incelemeye devam edeceğiz.

Örnekte, web sitesinde kullanıcıların eklediği dosyaların depolandığı, Dosyalar adında bir klasor var ve bu klasör içerisindeki dosyalarda, içerik aramasının yapılması isteniyor. Arama sadece Dosyalar klasörünün içerisinde olacağı için öncellikle bu klasör için katalog oluşturulması gerekmektedir.

  • Indexing Service üzerinde, sağ tuş kısayol menüsünden, New > Catalog seçilir.
  • Açılan Add Catalog penceresinden, kataloğa bir isim verilir ve klasörün konumu seçilir.

  • "Catalog will remain off-line until Indexing Service is restarted" mesajına Ok denildikten sonra, kataloğun aktif olabilmesi için, Indexing Service önce durdurup sonra tekrar başlatmanız gerekmektedir.

Kataloğun Kapsamını Belirleme

Kataloğu oluşturduktan sonra, kataloğun kapsamını belirlememiz gerekmektedir. Bunun anlamı arama yapıldığında bakılacak yerlerdir. Bir ya da daha fazla konum yaratılabilir.

  • Oluşturulan katalog (WebDosya) üzerinde sağ tuş kısayol menüsünden, New > Direcory seçilir.

 

  • Path için Dosyalar klasörü seçilir.
  • Include in Index alanının Yes olarak işaretli olduğundan emin olunuz.

Web Uygulaması

Search adlı web sitesindeki, arama sayfasının içeriği aşağıdaki gibidir.

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="ContentSearch.aspx.vb" Inherits="ContentSearch" %>

                 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

                 

<html xmlns="http://www.w3.org/1999/xhtml" >

<head runat="server">

    <title>ARAMA</title>

</head>

<body>

    <form id="form1" runat="server">

           <table border="0" cellpadding="3" cellspacing="3">

            <tr>

                <td>Aranacak Kelime/Ifadeyi Giriniz</td>

                <td><asp:TextBox ID="TextBox1" runat="server"/></td>

            </tr>

            <tr>

                <td align="center" colspan="2">

                <asp:Button ID="Button1" runat="server" Text="Ara"/></td>

            </tr>

            <tr>

                <td colspan="2" align="center">

                    <asp:GridView ID="GridView1" runat="server"

                        AutoGenerateColumns="False" ShowHeader="False">

                        <Columns>

                        <asp:BoundField DataField="filename"/>

                        <asp:TemplateField>

                            <ItemTemplate>

                                <asp:HyperLink ID="HypLnk1" runat="server"

                                    NavigateUrl='<%# "/Search/Dosyalar/" & Eval("filename") %>'   

                                    Target="_blank" Text="Dosyayı Aç"/>

                             </ItemTemplate>

                        </asp:TemplateField>

                        </Columns>

                    </asp:GridView>

                </td>

            </tr>

        </table>

     </form>

</body>

</html>

Seneryoya göre, Ara düğmesine tıklanıldığında, Textbox kontrolün içerisine girilen metin/ifade, Dosyalar klasörün içerisindeki tüm dosya içeriklerinde aranır ve sonuç GridView kontrolünde listelenir. Ve listede istenilen dosyanın linkine tıklanarak, dosya açılır.

Sorgulama