Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 16868|Odpověď: 0

[WCF/Web Servisy] Operace 'xxx' nemohla být načtena, protože má parametr nebo retu...

[Kopírovat odkaz]
Zveřejněno 20.07.2016 10:59:59 | | |
Operace 'xxx' nemohla být načtena, protože má parametr nebo typ návratu typu System.ServiceModel.Channels.Message nebo typ s MessageContractAttribute a dalšími parametry různých typů. Při použití System.ServiceModel.Channels.Message nebo typů s MessageContractAttribute nesmí metoda používat žádné jiné typy parametrů.

Napsal jsem rozhraní pro nahrávání souborů ve WCF a chci vrátit výsledek nahrávání, rozhraní je následující:



V tuto chvíli bude běh hlásit chybu, pokud je zapsán následovně:



Chyby budou hlášeny také při běhu!!!

Jak jsme už řekli, co je duplexing, je to tam a zpět, že? Ano, výše uvedená metoda má příchozí parametry a návratové hodnoty, jsou tam příchody a odchody, je to duplex, proč ne?

Haha, problém je, že používáme protokol zpráv, podle tohoto předpokladu nelze naši metodu definovat jen tak náhodně, pomocí metody protokolu zpráv, pokud:

a. Pokud je smlouva zprávy použita jako příchozí parametr, může existovat pouze jeden parametr a následující definice jsou nesprávné:

neplatné Smíření (BankingTransaction bt1, BankingTransaction bt2);

b. Pokud nevrátíte neplatné, pokud ne, musíte vrátit smlouvu o zprávě, bool UpLoadFile(TransferFileMessage tMsg) Naše definice zjevně nesplňuje požadavky.

Tak jak to vyřešit? Musíme definovat další smlouvu o zprávách pro vrácení.


Zhruba řečeno, nemůžete použít bool, string atd. jako návratové hodnoty, můžete nastavit typ hodnoty bez návratu.

Ale zajímalo by mě, co když existuje výnosná hodnota???? Řešení je následující:









Předchozí:Chyba WCF: 413 Request Entity Too Large
Další:Nahrávání implementačního souboru WCF má návratovou hodnotu pro stažení dema
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com