Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 16868|Svare: 0

[WCF/Web Servics] Operasjonen 'xxx' kunne ikke lastes fordi den har en parameter eller retu...

[Kopier lenke]
Publisert på 20.07.2016 10:59:59 | | |
Operasjonen 'xxx' kunne ikke lastes inn fordi den har en parameter eller returtype av typen System.ServiceModel.Channels.Message eller en type som har MessageContractAttribute og andre parametere av ulike typer. Når man bruker System.ServiceModel.Channels.Message eller typer med MessageContractAttribute, må metoden ikke bruke andre typer parametere.

Jeg skrev et grensesnitt for å laste opp filer i WCF og ønsker å returnere opplastingsresultatet, grensesnittet er som følger:



På dette tidspunktet vil kjøringen rapportere en feil hvis den skrives som følger:



Feil vil også bli rapportert under kjøring!!!

Som vi sa tidligere, hva er duplexing, det er en frem og tilbake, ikke sant? Ja, metoden ovenfor har innkommende parametere og returverdier, det kommer og går, det er en dupleks, hvorfor ikke?

Haha, problemet er at vi bruker meldingsprotokollen, under dette premisset kan ikke metoden vår defineres casual, ved å bruke meldingsprotokollmetoden, hvis:

a. Hvis meldingskontrakten brukes som en innkommende parameter, kan det bare være én parameter, og følgende definisjoner er feil:

ugyldig avstemming(BankingTransaksjon bt1, BankingTransaksjon bt2);

b. Med mindre du returnerer void, hvis ikke, må du returnere en meldingskontrakt, bool UpLoadFile(TransferFileMessage tMsg). Vår definisjon oppfyller åpenbart ikke kravene.

Så hvordan løse det? Vi må definere en annen meldingskontrakt for retur.


Grovt sagt kan du ikke bruke bool, string osv. som returverdier, du kan sette void no return-verditypen.

Men jeg lurer på om det finnes en avkastningsverdi???? Løsningen er som følger:









Foregående:WCF-feil: 413 forespørselsenhet for stor
Neste:WCF-implementeringsfilopplasting har en returverdi for demonedlasting
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com