Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 16868|Απάντηση: 0

[WCF/Υπηρεσίες Ιστού] Δεν ήταν δυνατή η φόρτωση της λειτουργίας 'xxx' επειδή έχει παράμετρο ή retu...

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 20/7/2016 10:59:59 π.μ. | | |
Δεν ήταν δυνατή η φόρτωση της λειτουργίας 'xxx' επειδή έχει έναν τύπο παραμέτρου ή επιστροφής τύπου System.ServiceModel.Channels.Message ή έναν τύπο που έχει MessageContractAttribute και άλλες παραμέτρους διαφόρων τύπων. Όταν χρησιμοποιείτε το System.ServiceModel.Channels.Message ή τύπους με MessageContractAttribute, η μέθοδος δεν πρέπει να χρησιμοποιεί άλλους τύπους παραμέτρων.

Έγραψα μια διεπαφή για να ανεβάσω αρχεία στο WCF και θέλω να επιστρέψω το αποτέλεσμα μεταφόρτωσης, η διεπαφή είναι η εξής:



Αυτή τη στιγμή, η εκτέλεση θα αναφέρει ένα σφάλμα εάν είναι γραμμένο ως εξής:



Τα σφάλματα θα αναφέρονται επίσης κατά την εκτέλεση!!!

Όπως είπαμε νωρίτερα, τι είναι το duplexing, υπάρχει ένα μπρος-πίσω, σωστά; Ναι, η παραπάνω μέθοδος έχει εισερχόμενες παραμέτρους και τιμές επιστροφής, υπάρχουν πήγαινε-έλα, είναι αμφίδρομη, γιατί όχι;

Χαχα, το πρόβλημα είναι ότι χρησιμοποιούμε το πρωτόκολλο μηνυμάτων, υπό αυτήν την προϋπόθεση, η μέθοδός μας δεν μπορεί να οριστεί τυχαία, χρησιμοποιώντας τη μέθοδο πρωτοκόλλου μηνύματος, εάν:

α. Εάν η σύμβαση μηνύματος χρησιμοποιείται ως εισερχόμενη παράμετρος, μπορεί να υπάρχει μόνο μία παράμετρος και οι ακόλουθοι ορισμοί είναι λανθασμένοι:

void Reconcile(BankingTransaction bt1, BankingTransaction bt2);

β. Αν δεν επιστρέψετε άκυρο, αν όχι, τότε πρέπει να επιστρέψετε ένα συμβόλαιο μηνύματος, bool UpLoadFile(TransferFileMessage tMsg) Ο ορισμός μας προφανώς δεν πληροί τις απαιτήσεις.

Πώς να το λύσετε λοιπόν; Πρέπει να ορίσουμε ένα άλλο συμβόλαιο μηνύματος για την επιστροφή.


Σε γενικές γραμμές, δεν μπορείτε να χρησιμοποιήσετε bool, string κ.λπ.

Ωστόσο, αναρωτιέμαι τι γίνεται αν υπάρχει τιμή επιστροφής???? Η λύση είναι η εξής:









Προηγούμενος:Σφάλμα WCF: 413 Η οντότητα αίτησης είναι πολύ μεγάλη
Επόμενος:Η μεταφόρτωση αρχείου υλοποίησης WCF έχει μια τιμή επιστροφής για λήψη επίδειξης
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com