Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 16868|Yanıt: 0

[WCF/Web Servisleri] 'xxx' işlemi yüklenemedi, çünkü bir parametresi veya retu'su vardı...

[Bağlantıyı kopyala]
Yayınlandı 20.07.2016 10:59:59 | | |
'xxx' işlemi, System.ServiceModel.Channels.Message tipinde bir parametre veya dönüş türüne veya MessageContractAttribute ile diğer parametrelere sahip bir türe sahip olduğu için yüklenemiyordu farklı türlerden. System.ServiceModel.Channels.Message veya MessageContractAttribute ile türler kullanılırken, yöntem başka herhangi bir parametre türü kullanmamalıdır.

WCF'de dosya yüklemek için bir arayüz yazdım ve yükleme sonucunu geri vermek istiyorum, arayüz şöyle:



Bu sırada, çalışma aşağıdaki şekilde yazılırsa hata rapor edecektir:



Çalışırken hatalar da bildirilecektir!!!

Daha önce de dediğimiz gibi, dupleks nedir, bir karşılıklı geçiş var, değil mi? Evet, yukarıdaki yöntemin gelen parametreleri ve dönüş değerleri var, gidiş-gidiş var, çift, neden olmasın?

Haha, sorun şu ki, mesaj protokolünü kullanıyoruz, bu varsayım altında, yöntemimiz mesaj protokolü yöntemiyle rastgele tanımlanamaz, eğer:

a. Mesaj sözleşmesi gelen parametre olarak kullanılıyorsa, yalnızca bir parametre olabilir ve aşağıdaki tanımlar yanlıştır:

geçersiz Uzlaştırma (Bankacılık İşlemi bt1, Bankacılık İşlemi bt2);

b. Geçersiz dönerseniz, eğer dövülmezseniz, bir mesaj sözleşmesi iade etmeniz gerekir, bool UpLoadFile(TransferFileMessage tMsg) Tanımımız açıkça gereksinimleri karşılamaz.

Peki bunu nasıl çözebilirim? Geri dönüş için başka bir mesaj sözleşmesi tanımlamamız gerekiyor.


Kabaca olarak, bool, string vb. dönüş değeri olarak kullanılamaz, void not return değer türünü ayarlayabilirsiniz.

Ama acaba bir geri dönüş değeri varsa ne olur???? Çözüm şöyledir:









Önceki:WCF hatası: 413 Varlık Çok Büyük Talep Ediyor
Önümüzdeki:WCF uygulama dosyası yüklemesi, demo indirme için geri dönüş değerine sahiptir
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com