Visual Basic 2005 veya Visual Basic.NET servis verilen bir .NET bileşeni oluşturma

Makale çevirileri Makale çevirileri
Makale numarası: 312902 - Bu makalenin geçerli olduğu ürünleri görün.
Bu makale arşivlenmiştir. "Olduğu gibi" sunulmaktadır ve bundan sonra güncelleştirilmeyecektir.
Hepsini aç | Hepsini kapa

Bu Sayfada

Özet

Bu adım adım makalede, işlemleri kullanan servis verilen bir .NET bileşeni oluşturulması gösterilmiştir. Bu makalede ayrıca servis verilen bileşeniniz sınayan bir istemci oluşturulması gösterilmiştir. Microsoft Enterprise Services .NET bileşenlerini Microsoft COM + hizmetlerini sağlar.

Önemli notlar

  • Bir servis verilen bileşen için güçlü bir ad kullanın.
  • Bir servis verilen bileşenleri genel derleme önbelleğinde kayıt (GAC) sistem düzeyinde kaynakları oldukları. Sunucu uygulamaları GAC'YE yükleyin. Bu zorunlu değildir, ancak Microsoft, kitaplık uygulamaları, GAC'YE kaydetmek önerir.
  • Servis verilen bileşenleri COM + kaydetmek için aşağıdaki yöntemlerden birini kullanabilirsiniz:
    • Yavaş kayıt servis verilen bileşenleri otomatik olarak kaydetmek için kullanın.
    • Servis verilen bileşenleri el ile kaydetmek için regsvcs.exe yardımcı programı'nı kullanın. Regsvcs.exe aşağıdaki klasörde bulunur:
      \WINNT\Microsoft.NET\Framework\ Framework Version
      Regsvcs.exe hakkında daha fazla bilgi için bkz: Microsoft .NET Framework Software Development Kit'e (SDK) belgeleri.
  • Bu makaledeki örnek kullanmak için yerel bilgisayarda Microsoft SQL Server'ı yükleyin.
  • Bu örnek, yalnızca gösterim amacıyla hazırlanmıştır. COM + işlem için en yüksek yalıtım düzeyi kullandığı için örnek bir COM + işlem dışında gösterilen bir SELECT sorgusu kullanabilirsiniz. Veritabanı üretilen işi artırmanın OKUMA sorguda, alt hareket düzeyleri için kullanın.

Servis verilen .NET bileşeni oluşturma

  1. Yeni bir sınıf kitaplığı Visual Basic projesi oluşturmak ve ServicedCOM olarak adlandırın.
  2. Varsayılan sınıfı için VBServCom yeniden adlandırın.
  3. Bir başvuru System.EnterpriseServices'ı ad alanı ekleyin.
  4. Sınıf deyimi önce aşağıdaki kodu yapıştırın veya yazın:
    Imports System.EnterpriseServices
    Imports System.Data.SqlClient
    					
  5. Sınıf ifadenin aşağıdaki kodu ekleyin:
        Inherits EnterpriseServices.ServicedComponent
    					
  6. Sınıf deyimi önce aşağıdaki kodu ekleyin (virgülü olmayan satır devam karakter "_"):
    <Transaction(TransactionOption.RequiresNew)> _
    					
  7. Aşağıdaki öznitelikleri AssemblyInfo.vb dosyasına ekleyin:
    <assembly: ApplicationActivation(ActivationOption.Library)>
    <assembly: ApplicationName("SimpleTrans")>
    						
    NOTLARı:
    • ActivationOption özniteliği, arayanın işleminde bileşen başlatılacak olup olmadığını gösterir. Kitaplık veya sunucuActivation.Option ayarlayabilirsiniz.
    • ApplicationName COM + uygulaması COM + kataloğunu ve Bileşen Hizmetleri Yönetimi konsolu için görünen ad özniteliğidir.
  8. Aşağıdaki isteğe bağlı öznitelik için AssemblyInfo.vb ekleme dosyası:
    <Assembly: Description("Simple Transactional application to show Enterprise Services")>
    						
    bu öznitelik COM + katalog ve Bileşen Hizmetleri Yönetim Konsolu COM + uygulaması için bir açıklama sağlar.
  9. Dosya ve sınıfı yeniden adlandırdıysanız, aşağıdaki yöntemi varsayılan Class1.vb veya VBServCom.vb dosyasına ekleyin:
        ' Shows Explicit SetComplete/SetAbort.
        Public Function DoTrans() As String
            Dim connection As SqlConnection
            Dim command As SqlCommand
            Dim reader As SqlDataReader
            Dim name As String
            Dim query As String
    
            Try
                query = "SELECT au_lname, au_fname FROM authors"
                connection = New SqlConnection("data source=localhost;initial catalog = pubs;UID=sa;PWD=")
                command = New SqlCommand(query, connection)
    
                connection.Open()
                reader = command.ExecuteReader()
    
                reader.Read()
                name = reader.GetString(0) & ", " & reader.GetString(1)
            Catch exc As Exception
                ContextUtil.SetAbort()
                Throw exc
            End Try
            DoTrans = name
        End Function
    
        ' Show implicit SetComplete/SetAbort.
        <AutoComplete(True)> _
        Public Sub DoTxAuto()
            'Do stuff
        End Sub
    					
  10. SqlConnection dizesini, çalışma ortamınız için değiştirin.

Bilgisayarınızı derleme kesin bir ad verin.

  1. Başlat ' ı tıklatın, Programlar ' ın üzerine gelin, Visual Studio.NET ' i işaretleyin ve sonra bir Visual Studio .NET'i açmak için Visual Studio .NET araçları ' nı tıklatın komut istemini.
  2. Komut istemine aşağıdaki komutu yazın:
    sn.exe ServicedCOM.snk -k
    Bu, derleme kesin adı sağlar.

    Regsvcs.exe hakkında daha fazla bilgi için Microsoft .NET Framework Software Development Kit'e (SDK) belgelerine bakın.
  3. ServicedCOM.snk proje klasörüne kopyalayın.
  4. AssemblyInfo.vb dosyasında AssemblykeyFile kodu aşağıdaki kodla değiştirin:
    <Assembly: AssemblyKeyFile("..\\..\\ServicedCOM.snk")>
    					

Servis verilen bileşeniniz COM + ekleme

Ilk örneği oluşturulduğunda, bileşen dinamik olarak kaydedin. Veya bileşeni el ile regsvcs.exe kaydedebilirsiniz. Regsvcs.exe kullanmak için aşağıdaki adımları izleyin:
  1. Başlat ' ı tıklatın, Programlar ' ın üzerine gelin, Visual Studio.NET ' i işaretleyin ve sonra .NET komut istemini açmak için Visual Studio .NET araçları ' nı tıklatın.
  2. .NET komut isteminde, regsvcs servicedcom.dll yazın.

    Bu, <a0>sınıf</a0> adıyla aynı adı taşıyan bir COM + kitaplık uygulaması oluşturur.

Bile?eniniz sınayın.

  1. Microsoft Not Defteri'ni kullanarak, bir metin dosyası açın.
  2. Aşağıdaki kodu dosyaya Kopyala:
    set o =createobject("VBServCOM.VBServCOM")
    
    MsgBox o.DoTrans()
    					
  3. Dosya menüsünde Kaydet ' i tıklatın.
  4. Dosya adı</a0> kutusunda, Test.vbs yazın. Kayıt türü listesinde, Tüm dosyalar ' ı tıklatın ve sonra da <a2>Kaydet</a2>'i tıklatın.
  5. Örnek çalıştırmak için dosyayı çift tıklatın.

Özellikler

Makale numarası: 312902 - Last Review: 24 Şubat 2014 Pazartesi - Gözden geçirme: 5.5
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Enterprise Services (included with the .NET Framework) 1.0
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic 2005
Anahtar Kelimeler: 
kbnosurvey kbarchive kbmt kbhowtomaster KB312902 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:312902

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