Κατέβασμα παρουσίασης
Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε
1
Web Services στη C# Εργαστήριο 7
Γιογουρτσόγλου Αβραάμ Μαρίνος Θεμιστοκλέους Ανδρούτσου 150 Γραφείο 206 Τηλ Ώρες Γραφείου: Τετάρτη 5-6 μμ
2
Web Services Διαδικασίες Ιστοσελίδας
Έχουμε μια ιστοσελίδα δημιουργίας και εκτέλεσης παραγγελιών. Οι χρήστες της για την είσοδό τους χρησιμοποιούν ένα όνομα χρήστη και έναν κωδικό πρόσβασης. Αν ο χρήστης είναι πελάτης του ηλεκτρονικού καταστήματος της ιστοσελίδας, τότε του εμφανίζεται η φόρμα δημιουργίας νέας παραγγελίας. Αν ο χρήστης είναι διαχειριστής της ιστοσελίδας, τότε εμφανίζεται φόρμα με τις παραγγελίες που εκκρεμούν για εκτέλεση. Στην παρουσίαση αυτή θα ασχοληθούμε με το κάλεσμα των web services από την διαδικασία εισόδου των χρηστών.
3
Web Services Διαδικασίες Ιστοσελίδας
4
Web Services Διαδικασίες Ιστοσελίδας
5
Web Services Διαδικασίες Ιστοσελίδας
Τα πιο σύνθετα είναι τα TryLogin και GetUserInfo web services. Τα λιγότερα σύνθετα είναι τα GetUserId και IsAdmin web services. Τέλος, τα απλά web services είναι τα: EncryptData, DecryptData και GetDBConnection.
6
Web Services Διαδικασίες Ιστοσελίδας
Στο τέλος θα κατασκευάσουμε την ιστοσελίδα εισόδου των χρηστών. Συνεπώς ξεκινάμε ανοίγοντας το Visual Studio, και δημιουργώντας νέο project.
7
Web Services Κατασκευή web service Ανοίγουμε το Visual Studio
Πηγαίνουμε File -> New -> Project
8
Web Services Κατασκευή web service
Επιλέγουμε στα αριστερά Visual C# -> WCF. Στην συνέχεια WCF Service Application,δίνουμε το όνομα FoundationWebServices, επιλέγουμε το “Create directory for solution”, δίνουμε όνομα στο solution ως LoginOperations και πατάμε ΟΚ.
9
Web Services Κατασκευή web service
Επιλέγουμε στα δεξιά από το Solution Explorer τα αρχεία IService1.cs και Service1.svc. Στην συνέχεια κάνουμε δεξί κλικ και τα διαγράφουμε.
10
Web Services Κατασκευή web service
Κάνουμε δεξί κλικ στο όνομα του project (δηλαδή FoundationWebServices) στην καρτέλα Solution Explorer. Και επιλέγουμε Add->New Item…
11
Web Services Κατασκευή web service
Στο παράθυρο που ανοίγει επιλέγουμε στα αριστερά Visual C# -> Web και από την λίστα που εμφανίζεται στην μέση το WCF Service. Στο κάτω μέρος ονομάζουμε το αρχείο EncryptData.svc
12
Web Services Κατασκευή web service Προστέθηκαν δύο αρχεία στο Project.
IEncryptData.cs – Διεπαφή (Interface) EncryptData.svc – Κλάση (Class)
13
Web Services Κατασκευή web service
Αρχικά αλλάζουμε την διεπαφή (IEncryptData) αφαιρώντας την μέθοδο DoWork και προσθέτοντας τη μέθοδο που θέλουμε να υλοποιήσουμε στο συγκεκριμένο web service. Η μέθοδος είναι: string Encrypt(string clearText);
14
Web Services Κατασκευή web service
15
Web Services Κατασκευή web service
Προηγουμένως ολοκληρώσαμε τις αλλαγές στην διεπαφή, και τώρα πρέπει να υλοποιήσουμε τη μέθοδο στην κλάση EncryptData. Αρχικά θα σβήσουμε τη μέθοδο DoWork που είχε μέσα η κλάση και θα προσθέσουμε τη μέθοδο της διεπαφής. Για γρήγορη συμπλήρωση της μεθόδου που πρέπει να υλοποιήσει η κλάση, πατάμε δεξί κλικ στο IEncryptData δίπλα στο όνομα της κλάσης και επιλέγουμε Implement Interface -> Implement Interface.
16
Web Services Κατασκευή web service
Με αυτό τον τρόπο συμπληρώνονται αυτόματα οι μέθοδοι. Θα αφαιρέσουμε τον κώδικα που έχει προστεθεί και θα συμπληρώσουμε το δικό μας.
17
Web Services Κατασκευή web service
Συμπληρώνουμε τον κώδικα για την υλοποίηση της μεθόδου.
18
Web Services Κατασκευή web service
Έχοντας ολοκληρώση την μέθοδο του πρώτο web service αντίστοιχα υλοποιούμε και τα άλλα δύο απλά web services (DecryptData, GetDBConnection). Αρχικά θα προσθέσουμε νέο WCF Service για το καθένα. Πηγαίνουμε στο όνομα του project στο παράθυρο του solution explorer και κάνουμε δεξί κλικ -> Add->New Item…
19
Web Services Κατασκευή web service
20
Web Services Κατασκευή web service
Στην επόμενη σελίδα εμφανίζεται ο κώδικας της κλάσης Decrypt, όπου είναι η μέθοδος του web service DecryptData.
21
Web Services Κατασκευή web service
22
Web Services Κατασκευή web service
Αντίστοιχα προσθέτουμε το web service GetDBConnection. Ακολουθεί ο κώδικας για την μέθοδο GetDBConnectionString του web service.
23
Web Services Κατασκευή web service
Μπορούμε είτε να τα υλοποιήσουμε στο ίδιο project, είτε να δημιουργήσουμε νέο, ώστε να είναι πιο ξεκάθαρο το επίπεδο των web services (foundation, utility, domain, business web services). Εμείς στη συγκεκριμένη παρουσίαση θα δημιουργήσουμε νέο project για τα utility web services και νέο για τα domain web services.
24
Web Services Κατασκευή web service
Κάνουμε δεξί κλικ στο solution στο παράθυρο του solution explorer και επιλέγουμε Add->New Project.
25
Web Services Κατασκευή web service
Δίνουμε το όνομα στο project “UtilityWebServices” και πατάμε το κουμπί “OK”.
26
Web Services Κατασκευή web service
Όπως κάνουμε κάθε φορά θα διαγράψουμε τα αρχεία IService.cs και Service1.svc. Στη συνέχεια προσθέτουμε ένα νέο WCF Service. Δεξί κλικ στο project Add->New Item…, και στο παράθυρο που ανοίγει δίνουμε το όνομα GetUserId.
27
Web Services Κατασκευή web service
Στο αρχείο IGetUserId σβήνουμε τη μέθοδο “DoWork” και προσθέτουμε τη παρακάτω μέθοδο. int GetExistingUserId(string username, string password);
28
Web Services Κατασκευή web service
Στη συνέχεια πηγαίνουμε από το παράθυρο “Solution Explorer” στο αρχείο GetUserId.svc για να προσθέσουμε τον κώδικα για την μέθοδο του web service. Καθώς το συγκεκριμένο web service καλεί δύο άλλα web services (EncryptData και GetDBConnection) θα πρέπει να προστεθούν αναφορές για αυτά.
29
Web Services Κατασκευή web service
30
Web Services Κατασκευή web service
Πατάμε το κουμπί “Discover” για να βρει τα διαθέσιμα web services στο solution.
31
Web Services Κατασκευή web service
Στη συγκεκριμένη περίπτωση θέλουμε το EncryptData, δίνουμε όνομα στην αναφορά “EncryptDataReference” και πατάμε το “OK”.
32
Web Services Κατασκευή web service
Με τον ίδιο τρόπο προσθέτουμε αναφορά και για το web service “GetDBConnection”.
33
Web Services Κατασκευή web service
Μετά την προσθήκη των αναφορών των web services θα πρέπει να προσθέσουμε αναφορά για την βιβλιοθήκη της κλάσης MySql.Data, καθώς θα πραγματοποιήσουμε σύνδεση σε βάση MySql. Συνεπώς κάνουμε δεξί κλικ πάνω στο όνομα του project (UtilityWebServices) Add->Reference…
34
Web Services Κατασκευή web service
35
Web Services Κατασκευή web service
Στο παράθυρο που ανοίγει κάνουμε αναζήτηση στο πεδίο πάνω δεξιά, και στη συνέχεια επιλέγουμε τη βιβλιοθήκη MySql.Data και πατάμε “OK”.
36
Web Services Κατασκευή web service
Αφού έχουμε προσθέσει τις αναφορές για τα web services που θα καλέσουμε και της βιβλιοθήκης της MySql, θα υλοποιήσουμε τη μέθοδο GetExistingUserId του web service GetUserId.
37
Web Services Κατασκευή web service
38
Web Services Κατασκευή web service
Όπως παρουσιάστηκε στις προηγούμενες διαφάνειες δημιουργούμε και το επόμενο web service με όνομα “IsAdmin”. Στην επόμενη διαφάνεια παρουσιάζεται ο κώδικας της κλάσης του web service.
39
Web Services Κατασκευή web service
40
Web Services Κατασκευή web service
Δημιουργούμε ένα νέο project στο solution, όπως κάναμε προηγουμένως για το project με τα utility web services. Του δίνουμε το όνομα “DomainWebServices” στο νέο project. Προσθέτουμε αναφορές για τα web services “GetUserId”, “IsAdmin”, “GetDBConnection” και “DecryptData” και για τη βιβλιοθήκη MySql.Data. Στη συνέχεια σβήνουμε τα αρχεία IService1.cs και Service1.svc και προσθέτουμε δύο νέα WCF Services με ονόματα TryLogin και GetUserInfo. Στις επόμενες διαφάνειες παρουσιάζεται ο κώδικας των δύο κλάσεων των web services αντίστοιχα.
41
Web Services Κατασκευή web service Αρχείο ITryLogin.cs
42
Web Services Κατασκευή web service Αρχείο TryLogin.svc.cs
43
Web Services Κατασκευή web service Αρχείο IGetUserInfo.cs
44
Web Services Κατασκευή web service Αρχείο GetUserInfo.svc.cs
45
Web Services Κατασκευή web service
Έχοντας ολοκληρώσει την υλοποίηση των web services θα κατασκευάσουμε την ιστοσελίδα εισόδου των χρηστών (Login Page). Θα δημιουργήσουμε αρχικά ένα νέο project το οποίο θα είναι web site. Κάνουμε δεξί κλικ στο όνομα του solution στο παράθυρο solution explorer και επιλέγουμε Add-> New Web Site…
46
Web Services Κατασκευή web service
47
Web Services Κατασκευή web service
Στο παράθυρο που ανοίγει, επιλέγουμε ASP.NET Empty Web Site, και στο κάτω μέρος πληκτρολογούμε το όνομα του web site. Στο συγκεκριμένο παράδειγμα το όνομα είναι “LoginPage”.
48
Web Services Κατασκευή web service
Προσθέτουμε τις αναφορές για τα δύο web services (TryLogin και GetUserInfo), κάνοντας δεξί κλικ στο όνομα του project του web site, Add -> Service Reference… Στο παράθυρο που ανοίγει πατάμε “Discover”, επιλέγουμε το web service, πληκτρολογούμε το όνομα της αναφοράς και πατάμε το “OK”.
49
Web Services Κατασκευή web service
Στη συνέχεια προσθέτουμε νέα σελίδα. Δεξί κλικ στο όνομα του project, Add->Add New Item…
50
Web Services Κατασκευή web service
Στο παράθυρο που ανοίγει, επιλέγουμε Web Form, δίνουμε το όνομα Login.aspx και επιλέγουμε το κουμπί Add.
51
Web Services Κατασκευή web service
Προσθέτουμε τον κώδικα στο αρχείο Login.aspx
52
Web Services Κατασκευή web service
Και τον κώδικα στο αρχείο Login.aspx.cs
53
Web Services Κατασκευή web service
Συνεπώς δημιουργήσαμε την σελίδα εισόδου των χρηστών όπου καλεί τα δύο σύνθετα web services (TryLogin και GetUserInfo) τα οποία με τη σειρά τους καλούν τα λιγότερα σύνθετα βάσει του αρχικού σχήματος.
54
Web Services Κατασκευή web service
Τέλος τρέχουμε την σελίδα που δημιουργήσαμε στο browser για να δούμε τα αποτελέσματα. Πράγματα αν εισάγουμε σωστά στοιχεία γίνεται παραπομπή στην αντίστοιχη ιστοσελίδα. Στην παρουσίαση αυτή δεν πραγματοποιήθηκε υλοποίηση των επόμενων σελίδων της διαδικασίας, οπότε η παραπομπή γίνεται σε σελίδες που δεν υπάρχουν και έτσι βγάζει πρόβλημα. Αλλά από το όνομα της σελίδας που πηγαίνει βλέπουμε ότι έχει τρέξει σωστά ο κώδικας.
Παρόμοιες παρουσιάσεις
© 2024 SlidePlayer.gr Inc.
All rights reserved.