NASıL YAPıLıR: Visual C# .NET bir servis verilen .NET bileşeni oluşturma

Makale çevirileri Makale çevirileri
Makale numarası: 306296 - Bu makalenin geçerli olduğu ürünleri görün.
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

  • Servis verilen bileşenleri, güçlü adları gerektirir.
  • Sistem düzeyinde kaynakları oldukları için servis verilen bileşenler Genel Derleme Önbelleği (GAC) kaydedilmelidir. Sunucu uygulamaları yükleme GAC'YE gerektirir, ancak değil (önerilir), ancak kitaplık uygulamaları yapın.
  • Servis verilen bileşenler ile COM + yavaş kaydı otomatik olarak veya el ile regsvcs.exe yardımcı programı aracılığıyla kaydedilemiyor. Regsvcs.exe aşağıdaki klasörde bulunur:
    \WINNT\Microsoft.NET\Framework\ <Framework sürüm >
    Regsvcs.exe hakkında daha fazla bilgi için Microsoft .NET Framework Software Development Kit (SDK) belgelerine bakın.
  • Bu örnek, yerel bilgisayarda Microsoft SQL Server yüklenmiş olduğunu varsayar.
  • Bu örnek, yalnızca gösterim amacıyla hazırlanmıştır. Kesinlikle konuşmak gerekirse, bu örnek'ın bir seçme sorgusu COM + işlem için en yüksek yalıtım düzeyi kullandığı için bir COM + işlem dışını çalıştırmak için iyi bir adaydır. Veritabanı üretilen işi artırmanın okuma sorguları için bir alt hareket düzeylerini göz önünde bulundurulması gereken uygulama programlama kullanışlıdır.

Servis verilen .NET bileşeni oluşturma

  1. ServicedCOM adlı yeni bir Visual C# Class Library projesi oluşturun.
  2. Varsayılan sınıfınızın ve gelen Class1.cs dosyaadı SimpleTrans.cs için yeniden adlandırın. Bunu yapmak için şu adımları izleyin:
    1. Sınıf görünüm penceresinde, Class1 ' ı sağ tıklatın ve sonra da Properties ' i tıklatın.
    2. Özellikler, Name özelliği için SimpleTrans değiştirin.
  3. Bir başvuru System.EnterpriseServices'ı ad alanı ekleyin.
  4. SimpleTrans.cs hem AssemblyInfo.cs, üst satır olarak, aşağıdaki ifadeyi ekleyin: SimpleTrans.cs üstündeki
    using System.EnterpriseServices;
    aşağıdaki deyimi ekleyin:
    using System.Data.SqlClient;
  5. ServicedComponent sınıfınızın devralmak (tam adı: System.EnterpriseServices.ServicedComponent).
  6. Aşağıdaki kodu hemen önce ekleyin * Genel sınıf * bildirimi:
    [Transaction(TransactionOption.RequiresNew)]
    					
  7. Aşağıdaki öznitelikleri AssemblyInfo.cs için önerilen ekleyin:
    [assembly: ApplicationActivation(ActivationOption.Library)]
    [assembly: ApplicationName("SimpleTrans")]	
    					
    • ActivationOption özniteliği, Arayanın işlemi içinden bileşen etkinleştirilecek 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. Kullandıktan hemen sonra SimpleTrans.cs için aşağıdaki isteğe bağlı özniteliği eklemek ifadeleri:
    [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. Aşağıdaki yöntem için SimpleTrans.cs ekleyin:
    // Demos Explicit SetComplete/SetAbort
            public string DoTrans()
            {
                SqlConnection	connection;
                SqlCommand		command; 
                SqlDataReader	reader;
                string		name;
                string		query;
    		
                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(Exception exc)
                {
                    ContextUtil.SetAbort();
                    throw exc;
                }
                return name;
        }
    // Demo implicit SetComplete/SetAbort
    [AutoComplete]
    public void DoTxAuto()
    {
        // Do stuff
    }
    					
  10. SqlConnection dizesini, çalışma ortamınıza uygun olarak 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, Visual Studio .NET araçları ' nın üzerine gelin ve Visual Studio .NET komut istemi ' ni tıklatın.
  2. Komut isteminde, derleme kesin adı vermek sn.exe -k ServicedCOM.snk yazın.

    Imzalama derlemeler kesin adları hakkında daha fazla bilgi için .NET Framework Software Development Kit'e (SDK) belgelerine bakın.
  3. ServicedCOM.snk proje klasörüne kopyalayın.
  4. AssemblyInfo.cs içinde AssemblykeyFile kodu aşağıdaki kodla değiştirin:
    [assembly: AssemblyKeyFile("..\\..\\ServicedCOM.snk")]
    					

Şirketiniz servis verilen bileşen için COM + ekleme

Bileşen, ilk örneği oluşturulur veya bileşeni el ile regsvcs.exe kaydedebilirsiniz dinamik olarak kaydetmeye izin verebilirsiniz. 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, Visual Studio .NET araçları ' nın üzerine gelin ve Visual Studio .NET komut istemi ' ni tıklatın.
  2. 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. Uyarı iletisini yoksayın.

Kendi bileşen sınayın.

  1. Not Defteri'nde, metin dosyası açın.
  2. Dosyayı aşağıdaki kodu yapıştırın:
    set o =createobject("ServicedCOM.SimpleTrans")
    
    MsgBox o.DoTrans()
    					
  3. Dosya menüsünden Kaydet'i tıklatın.
  4. Farklı Kaydet iletişim kutusunda, Dosya adı metin kutusuna 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ı: 306296 - Last Review: 18 Eylül 2003 Perşembe - Gözden geçirme: 4.1
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Enterprise Services (included with the .NET Framework) 1.0
  • Microsoft Visual C# .NET 2002 Standard Edition
Anahtar Kelimeler: 
kbmt kbhowtomaster KB306296 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:306296

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