Makale numarası: 307997 - Son Gözden Geçirme: 15 Temmuz 2004 Perşembe - Gözden geçirme: 3.4

Bir ASP.NET HTTP işleyicisi, Visual Basic .NET kullanarak oluşturma

Sistem İpucuBu makale, kullandığınızdan farklı bir işletim sistemine yöneliktir. Sizinle ilgili olmayabilecek makale içeriği devre dışı bırakıldı.

Bu Sayfada

Hepsini aç | Hepsini kapa

Özet

Bu adım adım makalede, Microsoft Visual Basic. NET'te basit, özel bir HTTP işleyicisi oluşturmak için kullanılacak gösterilmiştir. Bu makalede, oluşturmak, dağıtmak ve işleyicinin yapılandırma gösterilmiştir.

Işleyicinin Uygula

  1. Microsoft Visual Studio .NET'i başlatın.
  2. Visual Basic .NET kullanarak yeni bir sınıf kitaplığı proje oluşturmak ve bu proje MyHandler olarak adlandırın.
  3. System.Web.dll derlemesine ekleyin.
  4. System.Web ad alanı almak için aşağıdaki kodu ekleyin:
    Imports System.Web
    					
  5. Sınıf SyncHandler.vb olarak yeniden adlandırın ve sonra bunu yansıtması için sınıf tanımını değiştirin.
  6. ıhttphandler arabirimini uygular. Bilgisayarınıza bir sınıf tanımı aşağıdaki gibi görünmelidir:
    Public Class SyncHandler
       Implements IHttpHandler
    					
  7. ısreusable özelliği ve ProcessRequest yöntemi <a0>ıhttphandler</a0> arabiriminin uygular. Bu işleyici zaman uyumlu olduğu için işleyici havuza alınmış yanlışısreusable özelliği için getirmek.
    Public ReadOnly Property IsReusable() As Boolean _
    Implements IHttpHandler.IsReusable
       Get
          Return False
       End Get
    End Property
    
    Public Sub ProcessRequest(ByVal context As HttpContext) _
    Implements IHttpHandler.ProcessRequest
       context.Response.Write("Hello from custom handler.")
    End Sub
    					
  8. Projeyi derleyin.

    Not: oturumu verilerine erişim sağlamak için işleyici istediğiniz ve sınıfınızın ıhttphandler yanında IRequiresSessionState arabirimini uygulamalıdır. IRequiresSessionState hiçbir yöntem veya özellikleri vardır. Yalnızca sizin işleyicisi, oturum verilerini kullanan belirtir.

Işleyicinin dağıtma

  1. Işleyici, c:\ınetpub\wwwroot dizininde adlı yeni bir dizin oluşturun.
  2. Depo gözü yeni oluşturulan işleyici dizininde adlı alt dizine oluşturun. Sonuç yolu C:\Inetpub\Wwwroot\Handler\Bin dizinidir.
  3. MyHandler.dll, projenizin depo gözü dizininden C:\Inetpub\Wwwroot\Handler\Bin dizinine kopyalayın.
  4. Yeni bir işleyici dizin bir Web uygulaması olarak işaretlemek için şu adımları izleyin:
    1. Microsoft Windows 2000 ve Microsoft Windows XP'deki ınternet Services Manager'ı başlatın. Microsoft Windows Server 2003'te ınternet ınformation Services (IIS) Yöneticisi'ni başlatın.
    2. Işleyici dizini farenin sağ düğmesiyle tıklayın ve sonra da Özellikler ' i tıklatın.
    3. Dizin sekmesinde, Oluştur ' u tıklatın.
  5. Bir uygulama eşleştirmesini işleyicisi için oluşturmak için şu adımları izleyin. Bu, aspnet_isapi.dll dosyasının *.sync uzantısı için bir eşleme yaratın. .Sync dosya istenen her istek, ASP.NET'e yönlendirilir ve ASP.NET kod işleyicisini yürütür.
    1. Handler Web uygulamasını üzerinde sağ tıklatın ve sonra da Properties ' i tıklatın.
    2. Dizin sekmesinde, yapılandırması ' nı tıklatın.
    3. Yeni bir eşleme eklemek için Ekle ' yi tıklatın.
    4. Çalıştırılabilir metin kutusuna aşağıdaki yolu yazın:
      C:\WINNT\Microsoft.NET\Framework\ <sürüm # > \Aspnet_isapi.dll
    5. Uzantı metin kutusuna .sync yazın.
    6. Windows 2000 ve Windows XP'de, Dosyanın varlığını denetle onay kutusunun temizlendiğinden emin olun ve Uygulama Uzantısı Eşlemesi Ekle/Düzenle iletişim kutusunu kapatmak için Tamam ' ı tıklatın. Windows Server 2003'te, <a1>Verify</a1> dosyanın varolduğundan onay kutusunun temizlendiğinden emin olun ve Uygulama Uzantısı Eşlemesi Ekle/Düzenle iletişim kutusunu kapatmak için Tamam ' ı tıklatın.
    7. Uygulama yapılandırması ve İşleyici özellikleri</a1> iletişim kutularını kapatmak için Tamam ' ı tıklatın.
  6. Internet Services Manager'ı kapatın.

Sistem yapılandırma

  1. C:\Inetpub\Wwwroot\Handler dizininde Web.config adlı yeni bir dosya oluşturun.
  2. Web.config için aşağıdaki kodu ekleyin:
    <configuration>
       <system.web>
          <httpHandlers>
             <add verb="*" path="*.sync" type="MyHandler.SyncHandler, MyHandler" />
          </httpHandlers>
       </system.web>
    </configuration>
    						
    ın fiil = "*", biz işleyicinin söyleyin herhangi bir eylem (örneğin, POST, HEAD, GET vb.) kullanan bir isteği işlemek için öznitelik. Yalnızca POST isteği işlemek için bu işleyicinin isterseniz, bunu değiştirmek fiilini "POST" =.

    Içinde yolu "*.sync" = özniteliği, biz .sync uzantılı dosyalar için herhangi bir gelen istekleri işlemek için işleyici söyleyin.

    Içinde type="MyHandler.SyncHander, MyHandler" özniteliği, biz işleyicinin söyleyin, MyHandler.SyncHandler ad uygulamak için bu isteği işler ve bu sınıfın MyHandler derlemesinde bulunur.

Modül sınayın.

Bir işleyici sınamak için <a0></a0>, sayfa dosya sisteminde bulunması gerekmez. Örneğin işleyicisi Web Default.sync dosyasında istek uygulama (http:// <BilgisayarAdı > / Handler/Default.sync). Aşağıdaki sonuçları almalısınız:
Hello from custom handler.
				

Referanslar

Ek hakkında bilgi almak için HTTP işleyicilerini, Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
307985  (http://support.microsoft.com/kb/307985/EN-US/ ) BILGI: ASP.NET HTTP modülleri ve HTTP işleyicileri genel bakış

Bu makaledeki bilginin uygulandığı durum:
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Anahtar Kelimeler: 
kbmt kbconfig kbhowtomaster kbhttphandlers kbhttpruntime kbweb KB307997 KbMttr
Otomatik TercümeOtomatik Tercüme
Ö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:307997  (http://support.microsoft.com/kb/307997/en-us/ )