Τι είναι το WSDL;
Web Services Περιγραφή Language (WSDL) είναι ένα αρχείο που βασίζεται σε XML και βασικά λέει στην εφαρμογή πελάτη τι κάνει η υπηρεσία web. Το αρχείο WSDL χρησιμοποιείται για να περιγράψει εν συντομία τι κάνει η υπηρεσία διαδικτύου και δίνει στον πελάτη όλες τις πληροφορίες που απαιτούνται για να συνδεθεί στην υπηρεσία διαδικτύου και να χρησιμοποιήσει όλες τις λειτουργίες που παρέχει η υπηρεσία διαδικτύου.
Σε αυτό το σεμινάριο, θα επικεντρωθούμε στο τελευταίο σημείο που είναι το πιο σημαντικό μέρος των υπηρεσιών Ιστού και αυτό είναι το WSDL ή η γλώσσα περιγραφής των υπηρεσιών Ιστού.
Το αρχείο WSDL χρησιμοποιείται για να περιγράψει εν συντομία τι κάνει η υπηρεσία διαδικτύου και δίνει στον πελάτη όλες τις πληροφορίες που απαιτούνται για να συνδεθεί στην υπηρεσία διαδικτύου και να χρησιμοποιήσει όλες τις λειτουργίες που παρέχει η υπηρεσία διαδικτύου.
Σε αυτό το σεμινάριο, θα μάθετε-
- Δομή ενός εγγράφου WSDL
- Στοιχεία WSDL
- Γιατί WSDL
- Μέρος μηνύματος WSDL
- Σύνδεση τύπου θύρας
- Δημιουργία αρχείου WSDL
- Δημοσίευση του παραδείγματος υπηρεσίας Web
Δομή ενός εγγράφου WSDL
Ένα έγγραφο WSDL χρησιμοποιείται για την περιγραφή μιας υπηρεσίας ιστού. Αυτή η περιγραφή απαιτείται, έτσι ώστε οι εφαρμογές πελατών να μπορούν να κατανοήσουν τι πραγματικά κάνει η υπηρεσία ιστού.
- Το αρχείο WSDL περιέχει την τοποθεσία της υπηρεσίας web και
- Οι μέθοδοι που εκτίθενται από την υπηρεσία Ιστού.
Το ίδιο το αρχείο WSDL μπορεί να φαίνεται πολύ περίπλοκο για οποιονδήποτε χρήστη, αλλά περιέχει όλες τις απαραίτητες πληροφορίες που κάθε εφαρμογή πελάτη θα απαιτούσε για τη χρήση της σχετικής υπηρεσίας ιστού.
Παρακάτω είναι η γενική δομή ενός αρχείου WSDL
- Ορισμός
- TargetNamespace
- Τύποι δεδομένων
- Μηνύματα
- Τύπος τύπου
- Δεσμεύσεις
- υπηρεσία
Ένα βασικό πράγμα που πρέπει να σημειωθεί εδώ είναι ότι ο ορισμός των μηνυμάτων, που είναι αυτός που περνά από το πρωτόκολλο SOAP ορίζεται στην πραγματικότητα στο έγγραφο WSDL.
Το έγγραφο WSDL λέει στην πραγματικότητα σε μια εφαρμογή πελάτη ποιοι είναι οι τύποι των μηνυμάτων SOAP που αποστέλλονται και γίνονται αποδεκτά από την υπηρεσία Web.
Με άλλα λόγια, το WSDL είναι σαν μια ταχυδρομική κάρτα που έχει τη διεύθυνση μιας συγκεκριμένης τοποθεσίας. Η διεύθυνση παρέχει τα στοιχεία του ατόμου που έδωσε την ταχυδρομική κάρτα. Ως εκ τούτου, με τον ίδιο τρόπο, το αρχείο WSDL είναι η ταχυδρομική κάρτα, η οποία έχει τη διεύθυνση της υπηρεσίας web που μπορεί να προσφέρει όλες τις λειτουργίες που θέλει ο πελάτης.
… … … … …
Ακολουθεί ένα διάγραμμα της δομής ενός αρχείου WSDL
Στοιχεία WSDL
Το αρχείο WSDL περιέχει τα ακόλουθα κύρια μέρη
-
Η ετικέτα
χρησιμοποιείται για τον καθορισμό όλων των σύνθετων τύπων δεδομένων, οι οποίοι θα χρησιμοποιηθούν στο μήνυμα που ανταλλάσσεται μεταξύ της εφαρμογής πελάτη και της υπηρεσίας ιστού. Αυτή είναι μια σημαντική πτυχή της εφαρμογής πελάτη, επειδή εάν η υπηρεσία web λειτουργεί με έναν σύνθετο τύπο δεδομένων, τότε η εφαρμογή πελάτη πρέπει να γνωρίζει πώς να επεξεργάζεται τον σύνθετο τύπο δεδομένων. Οι τύποι δεδομένων όπως το float, οι αριθμοί και οι συμβολοσειρές είναι όλοι απλοί τύποι δεδομένων, αλλά θα μπορούσαν να υπάρχουν δομημένοι τύποι δεδομένων που μπορεί να παρέχονται από την υπηρεσία Ιστού. Για παράδειγμα, θα μπορούσε να υπάρχει ένας τύπος δεδομένων που ονομάζεται EmployeeDataType, ο οποίος θα μπορούσε να έχει 2 στοιχεία που ονομάζονται "EmployeeName" του τύπου string και "EmployeeID" του τύπου τύπου ή ακέραιο. Μαζί σχηματίζουν μια δομή δεδομένων που στη συνέχεια γίνεται ένας σύνθετος τύπος δεδομένων.
-
Η ετικέτα <μηνύματα> χρησιμοποιείται για τον καθορισμό του μηνύματος που ανταλλάσσεται μεταξύ της εφαρμογής πελάτη και του διακομιστή ιστού. Αυτά τα μηνύματα θα εξηγήσουν τις λειτουργίες εισόδου και εξόδου που μπορούν να εκτελεστούν από την υπηρεσία Ιστού. Ένα παράδειγμα μηνύματος μπορεί να είναι ένα μήνυμα που δέχεται το EmployeeID ενός υπαλλήλου και το μήνυμα εξόδου μπορεί να είναι το όνομα του υπαλλήλου με βάση το EmpoyeeID που παρέχεται.
-
Η ετικέτα
χρησιμοποιείται για να ενσωματώνει κάθε μήνυμα εισόδου και εξόδου σε μία λογική λειτουργία. Θα μπορούσε λοιπόν να υπάρξει μια λειτουργία που ονομάζεται "GetEm Employee" η οποία συνδυάζει το μήνυμα εισόδου της αποδοχής του EmployeeID από μια εφαρμογή πελάτη και στη συνέχεια την αποστολή του EmployeeName ως το μήνυμα εξόδου. -
Η ετικέτα
χρησιμοποιείται για τη σύνδεση της λειτουργίας με τον συγκεκριμένο τύπο θύρας. Αυτό συμβαίνει ώστε όταν η εφαρμογή πελάτη καλεί τον σχετικό τύπο θύρας, τότε θα μπορεί να έχει πρόσβαση στις λειτουργίες που συνδέονται με αυτόν τον τύπο θύρας. Οι τύποι θύρας είναι ακριβώς όπως διασυνδέσεις. Επομένως, εάν μια εφαρμογή πελάτη πρέπει να χρησιμοποιήσει μια υπηρεσία Ιστού, πρέπει να χρησιμοποιήσει τις δεσμευτικές πληροφορίες για να διασφαλίσει ότι μπορούν να συνδεθούν στη διεπαφή που παρέχεται από αυτήν την υπηρεσία Ιστού. -
Η ετικέτα
είναι ένα όνομα που δίνεται στην ίδια την υπηρεσία ιστού. Αρχικά, όταν μια εφαρμογή πελάτη πραγματοποιεί μια κλήση στην υπηρεσία διαδικτύου, θα πραγματοποιείται καλώντας το όνομα της υπηρεσίας ιστού. Για παράδειγμα, μια υπηρεσία Ιστού μπορεί να βρίσκεται σε μια διεύθυνση όπως http: //localhost/Guru99/Tutorial.asmx . Η ετικέτα υπηρεσίας θα έχει στην πραγματικότητα το URL που ορίζεται ως http: //localhost/Guru99/Tutorial.asmx , το οποίο θα πει στην εφαρμογή πελάτη ότι υπάρχει διαθέσιμη υπηρεσία web σε αυτήν την τοποθεσία.
Γιατί WSDL
Μια διαδικτυακή υπηρεσία είναι ένα σημαντικό στοιχείο για τη δημιουργία σύγχρονων εφαρμογών Ιστού. Ο κύριος σκοπός τους είναι να επιτρέπουν σε πολλές εφαρμογές που βασίζονται σε διάφορες γλώσσες προγραμματισμού να μιλούν μεταξύ τους. Για παράδειγμα, μπορούμε να έχουμε μια .Net web εφαρμογή συνομιλίες με μια εφαρμογή Java μέσω μιας υπηρεσίας Web.
Μια υπηρεσία Ιστού έχει τις ακόλουθες βασικές δυνατότητες
- Είναι κατασκευασμένο χρησιμοποιώντας τη γλώσσα προγραμματισμού XML. Σχεδόν όλες οι σύγχρονες τεχνολογίες όπως .Net και Java έχουν αντίστοιχες εντολές που έχουν τη δυνατότητα να συνεργάζονται με XML. Ως εκ τούτου, η XML λήφθηκε ως η καταλληλότερη γλώσσα για την κατασκευή υπηρεσιών Ιστού.
- Οι υπηρεσίες Ιστού επικοινωνούν μέσω HTTP. Το HTTP είναι ένα πρωτόκολλο που χρησιμοποιείται από όλες τις διαδικτυακές εφαρμογές. Ως εκ τούτου, ήταν λογικό να διασφαλιστεί ότι οι υπηρεσίες Ιστού είχαν επίσης τη δυνατότητα να λειτουργούν μέσω του πρωτοκόλλου HTTP.
- Οι υπηρεσίες Ιστού συμμορφώνονται με μια συγκεκριμένη προδιαγραφή γλώσσας. Αυτή η προδιαγραφή καθορίζεται από το W3C, το οποίο είναι το διοικητικό όργανο για όλα τα πρότυπα ιστού.
- Οι υπηρεσίες Ιστού έχουν μια γλώσσα περιγραφής γνωστή ως WSDL, η οποία χρησιμοποιείται για την περιγραφή της υπηρεσίας ιστού.
Το αρχείο WSDL είναι γραμμένο σε απλή παλιά XML. Ο λόγος που είναι σε XML είναι έτσι ώστε το αρχείο να μπορεί να διαβαστεί από οποιαδήποτε γλώσσα προγραμματισμού.
Έτσι, εάν η εφαρμογή πελάτη γράφτηκε στο .Net, θα κατανοούσε το αρχείο XML. Ομοίως, εάν η εφαρμογή πελάτη γράφτηκε στη γλώσσα προγραμματισμού Java, τότε θα μπορούσε επίσης να ερμηνεύσει το αρχείο WSDL.
Το αρχείο WSDL είναι αυτό που συνδέει τα πάντα μαζί. Από το παραπάνω διάγραμμα, μπορείτε να δείτε ότι μπορείτε να δημιουργήσετε μια υπηρεσία Ιστού στη γλώσσα .Net.
Εδώ λοιπόν εφαρμόζεται η υπηρεσία. Εάν δεν είχατε το αρχείο WSDL και θέλετε μια κλάση Java να καταναλώσει την υπηρεσία διαδικτύου, θα χρειαστείτε πολλή προσπάθεια κωδικοποίησης για να το επιτύχετε.
Αλλά τώρα με το αρχείο WSDL που βρίσκεται σε XML, το οποίο μπορεί να γίνει κατανοητό από οποιαδήποτε γλώσσα προγραμματισμού, μπορείτε τώρα να έχετε εύκολα μια κλάση Java να καταναλώσει την υπηρεσία .Net web. Ως εκ τούτου, το ποσό της προσπάθειας κωδικοποίησης μειώνεται πολύ.
Μέρος μηνύματος WSDL
Το WSDL αποτελείται από μια ενότητα που ονομάζεται "μηνύματα" που συμβολίζεται με το στοιχείο
Αυτό το στοιχείο χρησιμοποιείται βασικά για να περιγράψει τα δεδομένα που ανταλλάσσονται μεταξύ της υπηρεσίας ιστού και της εφαρμογής πελάτη.
Κάθε υπηρεσία Ιστού θα έχει πάντα 2 τύπους μηνυμάτων,
- Το ένα είναι για την είσοδο της υπηρεσίας Ιστού και το άλλο για την έξοδο της υπηρεσίας Ιστού.
- Η είσοδος χρησιμοποιείται για να περιγράψει τις παραμέτρους που γίνονται αποδεκτές από την υπηρεσία Ιστού. Αυτή είναι μια σημαντική πτυχή της εφαρμογής πελάτη, ώστε να γνωρίζει τις τιμές που πρέπει να αποστέλλονται ως παράμετροι στην υπηρεσία Ιστού.
- Ο άλλος τύπος μηνύματος είναι το μήνυμα εξόδου που λέει ποια αποτελέσματα παρέχονται από την υπηρεσία Ιστού.
Κάθε μήνυμα, με τη σειρά του, θα έχει ένα στοιχείο
Ακολουθεί ένα απλό παράδειγμα, για το πώς φαίνεται ένα μήνυμα για μια υπηρεσία Ιστού. Η λειτουργικότητα της υπηρεσίας διαδικτύου είναι να παρέχει το όνομα ενός "Εκπαιδευτικού προγράμματος" μόλις υποβληθεί ένα "Αναγνωριστικό εκμάθησης" ως παράμετρος στην υπηρεσία διαδικτύου.
- Όπως μπορούμε να δούμε η υπηρεσία ιστού έχει 2 μηνύματα, ένα για την είσοδο και το άλλο για την έξοδο.
- Το μήνυμα εισαγωγής είναι γνωστό ως TutorialNameRequest το οποίο έχει μία παράμετρο που ονομάζεται TutorialID. Αυτή η παράμετρος είναι του αριθμού τύπου που καθορίζεται από τον τύπο αριθμού xsd:
- Το μήνυμα εξόδου είναι γνωστό ως TutorialNameResponse που έχει μία παράμετρο που ονομάζεται TutorialName. Αυτή η παράμετρος είναι του τύπου string που καθορίζεται από τον τύπο xsd: string
Σύνδεση τύπου θύρας
Οι θύρες χρησιμοποιούνται στο WSDL για τον καθορισμό μιας πλήρους λειτουργίας που προσφέρεται από την υπηρεσία διαδικτύου.
Στο προηγούμενο θέμα, είδαμε ότι η υπηρεσία ιστού μας παρείχε 2 μηνύματα, ένα για την είσοδο που ονομάζεται "TutorialNameRequest" και το άλλο για την έξοδο που ονομάζεται "TutorialNameResponse." Μαζί η φόρμα μηνύματος εισόδου και εξόδου είναι γνωστή ως μία πλήρης λειτουργία.
Το WSDL παρέχει ένα στοιχείο που ονομάζεται
Έτσι στο παραπάνω παράδειγμα μπορούμε να σημειώσουμε τα εξής:
- Το όνομα του τύπου θύρας που ενσωματώνει τη λειτουργία δίνεται ως "Tutorial_PortType."
- Στην ίδια τη λειτουργία δίνεται ένα όνομα "Tutorial". Έτσι, η λειτουργία μας παρέχει βασικά ένα TutorialName εάν το TutorialID δίνεται ως παράμετρος εισαγωγής.
- Στη συνέχεια είναι τα 2 μηνύματά μας, ένα για την είσοδο και το άλλο για την έξοδο που αποτελεί τη λειτουργία μας
Εκτός από το στοιχείο
- Το παραπάνω παράδειγμα δείχνει ότι η δέσμευση αποτελείται από ένα δεσμευτικό όνομα το οποίο στην περίπτωσή μας δίνεται ως "TutorialSoapBinding". Η δέσμευση με απλούς όρους είναι οι πληροφορίες που χρησιμοποιεί η εφαρμογή πελάτη για να δεσμευτεί στην υπηρεσία web. Μόλις δεσμευτεί στην υπηρεσία διαδικτύου, τότε έχει τη δυνατότητα να καλεί τις διάφορες λειτουργίες που εκτίθενται από την υπηρεσία Ιστού.
- Το επίπεδο μεταφοράς δίνεται ως http: // που σημαίνει ότι τα μηνύματα που θα μεταφερθούν μέσω του πρωτοκόλλου HTTP.
Δημιουργία αρχείου WSDL
Το αρχείο WSDL δημιουργείται κάθε φορά που δημιουργείται μια υπηρεσία web σε οποιαδήποτε γλώσσα προγραμματισμού.
Δεδομένου ότι το αρχείο WSDL είναι πολύ περίπλοκο να δημιουργηθεί από απλό μηδέν, όλοι οι συντάκτες όπως το Visual Studio για .Net και το Eclipse για Java δημιουργούν αυτόματα το αρχείο WSDL.
Ακολουθεί ένα παράδειγμα αρχείου WSDL που δημιουργήθηκε στο Visual Studio.
TutorialService
Το παραπάνω αρχείο WSDL φαίνεται πολύ εκφοβιστικό για οποιονδήποτε χρήστη, θα καλύψουμε λεπτομερώς τα διάφορα μέρη στα επόμενα σεμινάρια, αλλά για τώρα, ας ρίξουμε μια συνοπτική ματιά σε τι κάνει πραγματικά κάθε ενότητα του αρχείου WSDL
Δημοσίευση του παραδείγματος υπηρεσίας Web
Τώρα ας δούμε ένα παράδειγμα για το πώς μπορούμε να δημοσιεύσουμε μια υπηρεσία Ιστού και να την καταναλώσουμε χρησιμοποιώντας το Visual Studio.
Σε αυτό το παράδειγμα, θα δημιουργήσουμε μια υπηρεσία Ιστού με μία μέθοδο Web. Αυτή η μέθοδος θα δεχτεί μια παράμετρο Integer που ονομάζεται "TutorialID". Στη συνέχεια, η μέθοδος Web θα επιστρέψει μια συμβολοσειρά που ονομάζεται "Υπηρεσίες Web".
Στη συνέχεια, θα δημιουργήσουμε μια εφαρμογή που βασίζεται στην κονσόλα, η οποία θα καταναλώσει αυτήν την υπηρεσία Ιστού και θα καλέσει τη μέθοδο ιστού μας ανάλογα.
Ας δούμε τα βήματα που απαιτούνται για την εκτέλεση αυτού του παραδείγματος.
Βήμα 1) Το πρώτο βήμα είναι να δημιουργήσετε την υπηρεσία ιστού σας. Τα λεπτομερή βήματα για το πώς δημιουργείται το έργο ιστού Asp.Net και μια υπηρεσία ιστού εξηγούνται εδώ. Ακολουθήστε τα ίδια βήματα για να δημιουργήσετε ανάλογα το έργο και την υπηρεσία Ιστού. Το βασικό μέρος είναι να εισαγάγετε τον παρακάτω κωδικό στο αρχείο υπηρεσιών Web.
namespace webservic asmx{[WebService(Name = "Guru99 Web service")]public class TutorialService : System.Web.Services.WebService{[WebMethod]public string GetTutorialService(int TutoriallD){string TutorialName = "Web Services";return TutorialName;}}}
Επεξήγηση κώδικα:
- Εδώ δημιουργούμε μια μέθοδο Web που ονομάζεται "Guru99WebService." Σε αυτήν τη μέθοδο ιστού, συμπεριλαμβάνουμε μια ακέραια παράμετρο που πρέπει να περάσει όποτε καλείται αυτή η μέθοδος ιστού.
- Στη συνέχεια ορίζουμε μια μεταβλητή που ονομάζεται "TutorialName" η οποία θα διατηρεί την τιμή συμβολοσειράς του "Web Services". Αυτή είναι η τιμή που θα επιστραφεί κατά την κλήση της υπηρεσίας διαδικτύου.
Βήμα 2) Μόλις ορίσουμε το αρχείο υπηρεσιών διαδικτύου, το επόμενο βήμα είναι να δημιουργήσουμε ένα πρόγραμμα πελάτη που θα καταναλώνει αυτήν την υπηρεσία Ιστού.
Ας δημιουργήσουμε μια απλή εφαρμογή κονσόλας, η οποία θα καλεί αυτήν την υπηρεσία ιστού, να επικαλεστούμε το "Guru99WebService" και, στη συνέχεια, να εμφανίσουμε την έξοδο της μεθόδου ιστού στην οθόνη καταγραφής της κονσόλας. Ακολουθήστε τα παρακάτω βήματα για να δημιουργήσετε μια εφαρμογή κονσόλας.
Κάντε δεξί κλικ στο αρχείο λύσης του Visual Studio και διαλέξτε την επιλογή Προσθήκη-> Νέο έργο
Βήμα 3) Σε αυτό το βήμα,
- Βεβαιωθείτε ότι έχετε επιλέξει πρώτα την επιλογή Visual C # Windows. Στη συνέχεια, επιλέξτε την επιλογή δημιουργίας μιας εφαρμογής κονσόλας.
- Δώστε ένα όνομα για το έργο σας το οποίο στην περίπτωσή μας έχει δοθεί ως "DemoApplication."
Αφού κάνετε κλικ στο κουμπί OK στην παραπάνω οθόνη, θα μπορείτε να δείτε το έργο στην Εξερεύνηση λύσεων στο Visual Studio.
Βήμα 4) Σε αυτό το βήμα, ορίζετε την εφαρμογή DemoApplication Console ως έργο εκκίνησης. Αυτό γίνεται για να διασφαλιστεί ότι αυτή η εφαρμογή ξεκινά πρώτη όταν εκτελείται ολόκληρο το έργο του Visual Studio. Αυτή η εφαρμογή της Κονσόλας, με τη σειρά της, θα καλεί την υπηρεσία web που θα ξεκινήσει αυτόματα από το Visual Studio.
Για να ολοκληρώσετε αυτό το βήμα, κάντε δεξί κλικ στο έργο DemoApplication και επιλέξτε την επιλογή "Ορισμός ως έργου StartUp".
Βήμα 5) Το επόμενο βήμα είναι να προσθέσετε την αναφορά υπηρεσίας του "Guru99Webservice" στην εφαρμογή κονσόλας μας. Αυτό γίνεται έτσι ώστε το DemoApplication να μπορεί να αναφέρει την υπηρεσία Ιστού και όλες τις μεθόδους Ιστού στην υπηρεσία Ιστού.
Για να το κάνετε αυτό, κάντε δεξί κλικ στο αρχείο έργου DemoApplication και επιλέξτε την επιλογή μενού Προσθήκη-> Αναφορά υπηρεσίας.
Βήμα 6) Σε αυτό το βήμα, θα παρέχουμε τις διαφορετικές τιμές που απαιτούνται για την προσθήκη της αναφοράς υπηρεσίας μας
- Πρώτα πρέπει να επιλέξουμε την επιλογή ανακάλυψης. Αυτή η επιλογή θα πάρει αυτόματα το αρχείο WSDL για την υπηρεσία web TutorialService.
- Στη συνέχεια, πρέπει να δώσουμε ένα όνομα για την αναφορά υπηρεσίας μας. Στην περίπτωσή μας, του δίνουμε ένα όνομα Guru99Webservice.
- Τότε πρέπει να επεκταθούμε στην επιλογή TutorialService.asmx, ώστε να έχουμε τη δυνατότητα να δούμε τη μέθοδο «GetTutorialService» στη δεξιά πλευρά. Εδώ το TutorialService.asmx είναι το όνομα του αρχείου Visual Studio .Net που περιέχει τον κωδικό για την υπηρεσία μας στο Web.
- Στη συνέχεια, θα δούμε τη μέθοδο Web που είχαμε στην υπηρεσία ιστού μας γνωστή ως "GetTutorialService"
Όταν κάνουμε κλικ στο κουμπί «ΟΚ», όλος ο απαιτούμενος κωδικός για πρόσβαση σε αυτήν την υπηρεσία Ιστού θα προστεθεί στην εφαρμογή DemoApplication Console όπως φαίνεται παρακάτω.
Το στιγμιότυπο οθόνης δείχνει ότι το "Guru99Webservice" προστέθηκε με επιτυχία στην εφαρμογή της κονσόλας μας.
Βήμα 7) Το επόμενο βήμα είναι να προσθέσετε τον κώδικα στην εφαρμογή κονσόλας μας για πρόσβαση στη μέθοδο ιστού στην υπηρεσία ιστού μας. Ανοίξτε το αρχείο κώδικα Program.cs που έρχεται αυτόματα με την εφαρμογή κονσόλας και προσθέστε τον παρακάτω κώδικα
namespace DemoApplication{class Program{static void Main(string[ ] args){var client = new Guru99Webservice.Guru99WebserviceSoapClient();Console.WriteLine(client.GetTutorialService(l));Console.ReadKey();}}}
Επεξήγηση κώδικα: -
- Το πρώτο μέρος είναι να επιλέξετε το αρχείο Program.cs. Αυτό είναι το κύριο αρχείο που δημιουργείται από το Visual Studio όταν δημιουργείται μια εφαρμογή κονσόλας. Αυτό το αρχείο εκτελείται όταν εκτελείται η εφαρμογή κονσόλας (στην περίπτωση της εφαρμογής επίδειξης).
- Στη συνέχεια, δημιουργούμε μια μεταβλητή που ονομάζεται "πελάτης" η οποία θα οριστεί σε μια παρουσία της αναφοράς της Υπηρεσίας μας, η οποία δημιουργήθηκε σε ένα προηγούμενο βήμα. Στην περίπτωσή μας, η αναφορά υπηρεσίας είναι «Guru99Webservice.Guru99WebserviveSoapClient ()»
- Στη συνέχεια, καλούμε τη διαδικτυακή μας μέθοδο «GetTutorialService» στην υπηρεσία ιστού TutorialService Να θυμάστε ότι η μέθοδος GetTutorialService »δέχεται μια ακέραια παράμετρο, οπότε μεταβιβάζουμε μια ακέραια παράμετρο στη μέθοδο web.
- Αυτή η τελική γραμμή είναι απλώς για να διασφαλίσει ότι η οθόνη καταγραφής της κονσόλας παραμένει ενεργή ώστε να μπορούμε να δούμε την έξοδο. Αυτή η εντολή θα περιμένει μόνο κάποια είσοδο από τον χρήστη.
Παραγωγή
Όταν ακολουθούνται όλα τα παραπάνω βήματα και εκτελείται η εφαρμογή Demo, θα εμφανιστεί η παρακάτω έξοδος.
Από την έξοδο, μπορούμε να δούμε ξεκάθαρα ότι το DemoApplication καλεί την υπηρεσία Web μας και ότι η συμβολοσειρά που επιστρέφεται από την υπηρεσία Web εμφανίζεται στο αρχείο καταγραφής της κονσόλας μας.
Περίληψη
- Η πλήρης μορφή του WSDL είναι η Γλώσσα Περιγραφή των Υπηρεσιών Ιστού
- Ένα έγγραφο WSDL είναι ένα έγγραφο που χρησιμοποιείται για την περιγραφή μιας υπηρεσίας ιστού. Αυτό είναι το κλειδί για κάθε εφαρμογή πελάτη να γνωρίζει πού βρίσκεται η υπηρεσία Ιστού. Επιτρέπει επίσης στην εφαρμογή πελάτη να κατανοήσει τις διαθέσιμες μεθόδους στην υπηρεσία Ιστού.
- Το αρχείο WSDL διευκολύνει την εφαρμογή της υπηρεσίας διαδικτύου σε μία γλώσσα προγραμματισμού και καλείται από διαφορετική γλώσσα προγραμματισμού.
- Το έγγραφο WSDL αποτελείται συνήθως από ένα μήνυμα. Για κάθε μέθοδο ιστού, υπάρχουν 2 μηνύματα, το ένα για την είσοδο και το άλλο για την έξοδο. Μαζί σχηματίζουν μια επιχείρηση.
- Web Services Περιγραφή Γλώσσα (σημαίνει WSDL) αρχεία συνήθως δημιουργούνται στον επεξεργαστή που χρησιμοποιείται για την αντίστοιχη γλώσσα προγραμματισμού.
- Έχουμε δει πώς μπορούμε να καταναλώσουμε μια διαδικτυακή υπηρεσία στο Visual Studio. Αυτό μπορεί να γίνει δημιουργώντας ένα άλλο έργο που είναι μια εφαρμογή κονσόλας. Στη συνέχεια, προσθέτοντας μια αναφορά υπηρεσίας, είμαστε τότε σε θέση να αποκτήσουμε πρόσβαση στις μεθόδους Ιστού στην υπηρεσία μας στο Web.