Aracılığıyla paylaş


Hizmet Başvurularında Sorun Giderme

Bu konu ile çalışırken oluşabilecek genel sorunlar listelenmiştir Windows Communication Foundation (WCF) veya WCF Veri Hizmetleri , başvuran Visual Studio.

Hata bir hizmet veriyor

Döndüğünüzde bir DataSet veya DataTable bir hizmetten "gelen iletiler için en büyük boyutu kotası aşıldı" özel durum alabilirsiniz.Varsayılan olarak, MaxReceivedMessageSize özelliği bazı bağlantılar için hizmet reddi saldırılarına maruz kalma olasılığını sınırlandırmak için nispeten daha küçük bir değere ayarlanır.Özel durum önlemek için bu değeri artırabilirsiniz.Daha fazla bilgi için bkz. MaxReceivedMessageSize.

Bu hatayı gidermek için:

  1. İçinde Solution Explorer, app.config dosyası açmak için çift tıklatın.

  2. Bulun MaxReceivedMessageSize özelliği ve daha büyük bir değere değiştirin.

Bir hizmeti benim çözüm bulamıyor

Tıklattığınızda bulma , düğme Hizmeti başvuruları eklemek iletişim kutusunda, bir veya birden çok wcf hizmeti kitaplığı projelerinde çözüm Hizmetler listesinde görünmüyor.Hizmet kitaplık çözümü eklendi, ancak henüz değil derlenmiştir oluşabilir.

Bu hatayı gidermek için:

  • İçinde Solution Explorer, wcf hizmeti Library projesi sağ tıklatıp Yapı.

Hizmet, Uzak Masaüstü üzerinden erişilirken hata oluştu

Bir kullanıcı eriştiğinde, Uzak Masaüstü bağlantısı ve kullanıcı üzerinden Web barındırılan wcf hizmeti yönetici izinlerine sahip değil, ntlm kimlik doğrulaması kullanılır.Kullanıcı, kullanıcının yönetici izinleri yoksa, aşağıdaki hata iletisini alabilirsiniz: "http isteği istemci kimlik doğrulama şeması 'Anonim' yetkilendirilmemiş.Sunucudan alınan kimlik doğrulama üstbilgisi 'ntlm' oldu."

Bu hatayı gidermek için:

  1. Web sitesi Project'te açın özelliklerini sayfaları.

  2. Üzerinde Başlat seçenekleri Sekme Temizle ntlm kimlik doğrulaması onay kutusu.

    [!NOT]

    Özellikle wcf hizmetleri içeren Web siteleri için yalnızca ntlm kimlik doğrulaması devre dışı bırakmak.wcf hizmetleri için güvenlik yapılandırması web.config dosyasında aracılığıyla yönetilir.Bu ntlm kimlik doğrulaması gereksiz kılar.

Daha fazla bilgi için bkz. Özel Durum Sorunlarını Giderme: System.ServiceModel.Security.MessageSecurityException.

Üretilen sınıfları için erişim düzeyi ayarının hiçbir etkisi

Ayarlama üretilen sınıfları için erişim düzeyini , seçenek Yapılandırma hizmeti başvuruları iletişim kutusuna veya arkadaş her zaman işe yaramayabilir.Seçeneği iletişim kutusunda ayarlanmış görünüyor olsa da, bir erişim düzeyi ile elde edilen destek sınıfları oluşturulacak Public.

Bu bilinen bir kısıtlama kullanarak sıralanmış olanlar gibi belirli türdeki, XmlSerializer.

Hata hata ayıklama hizmet kodu

İstemci kodundan wcf hizmeti için kodun içine adım, eksik sembolleri ilgili bir hata alabilirsiniz.Çözümünüzün bir parçası olan bir hizmet taşınmış veya kaldırılmış çözümden olduğunda bu durum oluşabilir.

wcf hizmetinin geçerli çözümün bir parçası olan bir başvuru ilk eklediğinizde, açık yapı bağımlılık hizmeti projesi ile hizmet istemcisi proje arasında eklenir.Bu, istemci istemci kodundan servis kodu atlama gibi senaryoları hata ayıklama için önemli olduğu her zaman güncel hizmet ikili erişen garanti eder.

Hizmet proje çözümden kaldırılırsa, bu açık yapı bağımlılık geçersiz kılınır.Visual Studio artık hizmet proje oluşturulmuşsa, gerektiğinde garanti edebilirsiniz.

Bu hatayı gidermek için el ile yeniden hizmeti projesi vardır:

  1. Araçlar menüsünden Seçenekler’i tıklatın.

  2. İçinde seçenekleri iletişim kutusunda, genişletme Projeler ve çözümlerseçip Genel.

  3. Emin olun gösterisi yapý yapýlandýrmasýný Gelişmiş onay kutusu seçiliyse ve i Tamam.

  4. wcf hizmeti projesi yükleyin.Daha fazla bilgi için bkz. Nasıl Yapılır: Birden Çok Proje Çözümü Oluşturma.

  5. İçinde Configuration Manager iletişim kutusunda, set etkin çözüm yapýlandýrmasý için hata ayıklama.Daha fazla bilgi için bkz. Nasıl Yapılır: Yapılandırmaları Oluşturma ve Düzenleme.

  6. İçinde Solution Explorer, wcf hizmeti projesi seçin.

  7. Üzerinde Build menüsünde,'ı yeniden wcf hizmeti projesi yeniden inşa etmek için.

wcf veri hizmetleri tarayıcıda görüntüleme

Ne zaman deneme verileri xml betimlemesi görüntülemek bir WCF Veri Hizmeti, Internet Explorer verileri bir rss beslemesi olarak hatalı yorumlayan.rss akışlarını görüntüleme seçeneği devre dışı bırakıldığından emin olmanız gerekir.

Bu hatayı gidermek için rss akışı devre dışı bırakın:

  1. Internet Explorer'da, üzerinde araçları menüsünde,'ı Internet Seçenekleri.

  2. Üzerinde İçerik sekmesini akışları bölüm ı ayarları.

  3. İçinde Akış ayarları iletişim kutusunda, açık besleme okuma görünümü Aç onay kutusunu işaretleyin ve ardından Tamam.

  4. Tıklatın Tamam kapatmak için Internet Seçenekleri iletişim kutusu.

Ayrıca bkz.

Kavramlar

Visual Studio'da Windows Communication Foundation Hizmetleri ve WCF Veri Hizmetleri

Diğer Kaynaklar

Consuming ASMX and WCF Services Sample