'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:
|