Makale numarası: 891386 - Son Gözden Geçirme: 07 Ağustos 2007 Salı - Gözden geçirme: 3.2

BizTalk Server 2006'da veya BizTalk Server 2004 BizTalk Web hizmetini kullanmak, işlenmemiş özel durum hata iletisi alabilirsiniz

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ı.
Hepsini aç | Hepsini kapa

Belirtiler

Microsoft BizTalk Server 2006 veya Microsoft BizTalk Server 2004 istemci uygulamasından bir BizTalk Web hizmetini kullanmak çalıştığınızda aşağıdakilerden birine benzer bir işlenmeyen özel durum hata iletisi alabilirsiniz:
Hata İletisi 1
Işlenmeyen bir özel durum türü 'System.Web.Services.Protocols.SoapException' içinde system.web.services.dll oluştu.
Ek bilgi: Sunucu isteği işleyemedi. Dosya veya derleme adı--> PP5dap.dll ya da, bağımlılıklarından biri bulunamadı.
Hata iletisi 2
SOAP hatası: [Alıcı]: Sunucu isteği işleyemedi. Geçici bir sınıf oluşturmak için yapılamıyor---> (sonuç = 1). <a1>hata</a1> CS0029: ''string için' [] string' türüne örtülü olarak dönüştürülemez
Derleme zamanı XmlSerialization.Compilation geçiş Web.config dosyasında etkinleştirilmişse, aşağıdakine benzer bir hata iletisi alabilirsiniz:
vax07a.0.cs(219,125): <a1>hata</a1> CS0030: '[dize] 'için' string' türüne dönüştürülemez
vax07a.0.cs(715,147): <a1>hata</a1> CS0029: ''string için' [] türü string' tarafından örtülü olarak dönüştürülemez

Neden

Bu sorun, BizTalk Web Hizmetleri Yayımlama Sihirbazı, istemci bilgilerini oluşturmak için Web Hizmetleri Açıklama Dili aracı (WSDL.exe) kullandığında oluşur. WSDL.exe aracı, "sınırlandırılmamış" değerine ayarlı maxOccurs özniteliği olan bir iç içe geçmiş düğümleri içeren bir şemayı yayımladığınızda, çok boyutlu diziler oluşturulan datatypes.cs dosyasında oluşturur. Bu nedenle, oluşturulan datatypes.cs dosya iç içe geçmiş düğümlerin yanlış türlerini içerir.

Örneğin oluşturulan datatypes.cs dosyasında aşağıdakilere benzer oluşturulan veri türü bildirim deyimleri unutmayın. Genel sınıf yourSchema
...
public class yourSchema
    {
     
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("TextValue")]
        public string[] TextValue;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("NumValue")]
        public string[] NumValue;
        
       ....
    }
....
Not bu örnekte, veri türü hatalı biçimde çok boyutlu bir dizi olarak bildirilir.

Pratik Çözüm

Bu soruna geçici bir çözüm bulmak için <a0></a0>, veri türü bildirisi deyimlerinden karakterleri köşeli parantez ([]) dizi kaldırarak BizTalk Web Hizmetleri Yayımlama Sihirbazı tarafından oluşturulan datatypes.cs dosyayı değiştirin.

Durum

Microsoft, "Geçerli Olduğu Ürünler" bölümünde listelenen Microsoft ürünlerinde bu sorunun olduğunu onaylamıştır.

Daha fazla bilgi

BizTalk Server 2006'daki BizTalk Web Hizmetleri Publishign Sihirbazı hakkında daha fazla bilgi için aşağıdaki Microsoft Developer Network (MSDN) Web sitesini ziyaret edin:
http://msdn2.microsoft.com/en-us/library/aa578703.aspx (http://msdn2.microsoft.com/en-us/library/ms946997.aspx)
BizTalk Web Hizmetleri Yayımlama Sihirbazı'nda BizTalk Server 2004 hakkında daha fazla bilgi için aşağıdaki Microsoft Developer Network (MSDN) Web sitesini ziyaret edin:
http://msdn2.microsoft.com/en-us/library/ms946997.aspx (http://msdn2.microsoft.com/en-us/library/ms946997.aspx)
XmlSerialization.Compilation anahtarı'nı etkinleştirme hakkında daha fazla bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
823196  (http://support.microsoft.com/kb/823196/ ) Istemci uygulaması bir Web hizmeti çağrıları, bir "System.IO.FileNotFoundException" hata iletisini alıyorsunuz

Bu makaledeki bilginin uygulandığı durum:
  • Microsoft BizTalk Server 2006 Developer Edition
  • Microsoft BizTalk Server 2006 Enterprise Edition
  • Microsoft BizTalk Server 2006 Standard Edition
  • Microsoft BizTalk Server 2004 Developer Edition
  • Microsoft BizTalk Server 2004 Enterprise Edition
  • Microsoft BizTalk Server 2004 Partner Edition
  • Microsoft BizTalk Server 2004 Standard Edition
Anahtar Kelimeler: 
kbmt kbbiztalk2004sp2fix kbtshoot kbnofix kbbug kbprb KB891386 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:891386  (http://support.microsoft.com/kb/891386/en-us/ )