| HTML Tutorials |
|
|
| XML Tutorials |
|
|
| Browser Scripting |
|
|
| Server Scripting |
|
|
| .NET (dotnet) |
|
|
| Multimedia |
|
|
| Web Building |
|
|
| Java Tutorials |
|
|
| Programming Langauges |
|
|
| Soft Skills |
|
|
|
|
Service 1 d'échantillon
|
|
Dans cette section nous créerons un service simple de Web. En travaillant avec le Web entretient les namespaces qui sont exigés sont récapitulés comme suit :
|
| System.Web.Services :
|
| Le namespace consiste un ensemble minimal et complet de types requis pour établir un service de Web
|
| System.Web.Services.Description :
|
| Ceci nous permet d'agir l'un sur l'autre avec WSDL programmatically
|
| System.Web.Services.Discovery :
|
| Ces types permettent à un consommateur de découvrir les services de Web installés sur une machine donnée
|
| System.Web.Services.Protocols :
|
| Ce namespace définit un certain nombre de types qui représente des protocoles d'invocation (HTTP-GET, HTTP-POST et SAVON)
|
| Le namespace de System.Web.Services
|
|
Le namespace de System.Web.Services est le namespace que nous employons normalement dans la plupart des projets pendant que les types que nous avons besoin sont déjà définis dans ce namespace. Suivre les membres du namespace de System.Web.Services :
|
|
WebMethodAttribute : Ajoutant un <WebMethod () > l'attribut à une méthode dans un service de Web rend la méthode accessible à partir d'un client à distance par le HTTP. Cet attribut expose la fonctionnalité de la méthode à laquelle elle est appliquée au monde extérieur.
|
|
WebService : Ceci définit la classe basse facultative pour des services de Web.
|
|
WebServiceAttribute : L'attribut de WebService peut être employé pour ajouter l'information à un service de Web qui peut la décrire est fonctionnalité.
|
|
WebServiceBindingAttribute : Déclare un protocole obligatoire qu'une méthode donnée de service de Web met en application.
|
| Codage d'un service d'échantillon |
|
Nous créerons maintenant un service d'échantillon. Ceci un service simple qui convertit une distance donnée des kilomètres en milles et vice-versa. Commencer le studio visuel .NET et ouvrir un nouveau projet à partir du projet de File->New->. Dans le type projets de base visuels choisis de projets de carreau et dans les calibres choisir le service de Web d'asp .NET, appeler ce service comme ConvertUnits et cliquer BIEN. Le nouveau dialogue de projet ressemble à l'image ci-dessous
|
|
Par défaut, les projets de service de Web créent automatiquement un nouvel annuaire virtuel sous IIS et stockeront nos dossiers là. Commuter à la vue de code du service de Web pour vous porter au code derrière le dossier qui est un dossier avec la prolongation de .asmx.vb. Si vous notez la fenêtre d'explorateur de solution vous trouverez quatre dossiers qui sont les Global.asax, Service1.asmx, ConvertUnits.vsdisco et le dossier de Web.config. Le dossier de Global.asax nous permet de répondre aux événements de global-niveau, le dossier de Web.config nous permet de configurer declaratively notre nouveau service de Web, le dossier de .asmx est un dossier de service de Web qui définissent les méthodes de service et le dossier de .vsdisco est un dossier de découverte qui contient une description de XML des services de Web à un URL donné.
|
| Par défaut le code derrière le dossier ressemble à ceci quand vous l'ouvrez :
|
|
Imports
System.Web.Services
<WebService(Namespace := "http://tempuri.org/")> _
Public Class Service2
Inherits System.Web.Services.WebService
#Region " Web Services Designer Generated Code "
' WEB SERVICE EXAMPLE
' The HelloWorld() example service returns the string Hello World.
' To build, uncomment the following lines then save and build the project.
' To test this web service, ensure that the .asmx file is the start page
' and press F5.
''<WebMethod()> Public Function HelloWorld() As String
' HelloWorld = "Hello World"
' End Function
End Class
|
|
|
Nous construirons sur le code mentionné ci-dessus derrière le dossier. Nous mettrons en application une certaine fonctionnalité simple ajoutant nos propres méthodes. Le service que nous établirons convertira la distance exprimée en kilomètres aux milles et vice-versa. Le code pour celui ressemble à ceci :
|
|
Imports
System
Imports System.Web.Services
<WebService(Namespace := "http://tempuri.org/")> _
Public Class Service1 Inherits System.Web.Services.WebService
#Region " Web Services Designer Generated Code "
#End Region
<WebMethod()> Public Function ConvertUnits(ByVal EnterUnit As Decimal, _
ByVal FromUnits As String, ByVal ToUnits As String)
'ConvertUnits function with three arguments
Select Case FromUnits.ToUpper.Chars(0)
'making a selection with Select Case
Case "K"
'for converting distance from kilometers to miles
Select Case ToUnits.ToUpper.Chars(0)
Case "K"
Return EnterUnit
'if both FromUnits and ToUnits are same, returns the entered distance
Case "M"
Return EnterUnit / 1.4
'converts distance from kilometers to miles, assuming 1 mile=1.4 kilometer
Case Else
'to throw exception
End Select
Case "M"
'for converting distance from miles to kilometers
Select Case ToUnits.ToUpper.Chars(0)
Case "M"
Return EnterUnit
Case "K"
Return EnterUnit * 1.4
'converts distance from miles to kilometers
Case Else
'to throw exception
End Select
End Select
End Function
End Class
|
|
|
Après avoir fini avec le code le courir en choisissant Debug->Start à partir du menu principal ou en serrant F5 sur le clavier. Par défaut notre navigateur fonctionne comme client expédient et montre une vue de HTML du marché de méthodes avec le <WebMethod () > attribut. Cliquer ici pour regarder la page que le premier charge quand vous courez ce service. Cliquer sur le lien ConvertUnits. Cliquer sur le lien vous porte à une page qui fournit les types de boîte à textes qui nous permettent d'écrire quelques valeurs dans eux. Écrire une certaine valeur dans le domaine d'EnterUnit et dans le domaine de FromUnits écrire ou M ou K et dans le ToUnits classé écrivent K ou M. Si vous souhaitez convertir 1000 kilomètres en milles puis vous devez écrire 1000 dans le domaine d'EnterUnit, K dans le FromUnits et M dans le ToUnits. Une fois que vous êtes faits avec lui, le clic appellent. Ceci appellera la méthode que nous avons écrite en code et le résultat sera retourné par l'intermédiaire d'un attribut de XML. Clic ici pour courir le service maintenant. C'est tout qu'il prend pour créer un service simple de Web.
|
| Service 2 d'échantillon
|
|
Dans cette section nous créerons un service de Web de calculatrice que les travaux semblables à une calculatrice et effectue des opérations comme ajouter, soustraient, multiplient, se divisent et nous consommerons ce service de Web avec une application de base visuelle de Windows. Pour commencer, ouvrir un nouveau projet et un Web choisi d'asp .NET service ou ajouter un nouveau service de Web au projet existant de service de Web d'asp .NET droit-en cliquant l'explorateur de nom de projet en solution et en choisissant le service de Web d'Add->Add. Nommer ce projet comme calculatrice, ouvrir le code derrière le dossier et commencer à écrire le code suivant.
|
|
Imports System
Imports System.Web.Services
<WebService(Namespace := "http://tempuri.org/")> _
Public Class Service1
Inherits System.Web.Services.WebService
#Region " Web Services Designer Generated Code "
#End Region
<WebMethod(Description:="Click to Add numbers")> Public Function
Add_
(ByVal x As Integer, ByVal y As Integer) As Integer
'this method adds two numbers by accepting the input from the user
'Description property allows to document the functionality of the Web method.
Return x + y
End Function
<WebMethod(Description:="Click to Subtract numbers")> Public
Function Subtract_
(ByVal x As Integer,ByVal y As Integer) As Integer
'this method subtracts by accepting the input from the user
Return x - y
End Function
<WebMethod(Description:="Click to Multiply numbers")> Public
Function Multiply_
(ByVal x As Integer,ByVal y As Integer) As Integer
'this method multiplies two numbers by accepting the input from the user
Return x * y
End Function
<WebMethod(Description:="Click to Divide numbers")> Public
Function Divide_
(ByVal x As Integer,ByVal y As Integer) As Integer
'this method divides two numbers by accepting the input from the user
If (y = 0) Then
Throw New Exception("Can't divide by zero")
'if number entered is 0 throws an exception
End If
Return x / y
End Function
End Class
|
|
|
Une fois que quand vous finissez avec le code courir le service en choisissant Debug->Start à partir du menu principal ou en serrant F5 sur le clavier. Le service qui charge peut être regardé en cliquant ici. Vous pouvez regarder toutes méthodes que nous avons créées en code avec la description de méthode à cette page. En outre vous pouvez écrire quelques valeurs dans les boîtes à textes et examiner le service. Nous consommerons ce service sous une forme de Windows.
|
| Consommation de ce service de Web
|
|
Ouvrir un nouveau projet de base visuel et choisir l'application de Windows à partir du calibre. De la boîte à outils ajouter un bouton à la forme. Notre intention ici est de consommer le service de Web que nous avons créé avec cette application de Windows. Quand nous cliquons le bouton il appellera la méthode que nous indiquons dans lui est événement de clic et renverra le résultat calculé dans un MessageBox.
|
|
Ajouter la référence de service de Web à l'application de Windows
|
|
Nous pouvons ajouter une référence au service de Web dans deux manières, avec l'explorateur de solution et à l'aide de l'outil de WSDL. Dans le clic de droit d'explorateur de solution sur des références et choisi ajouter la référence de Web. Cela ouvrent un calibre semblable à l'image ci-dessous.
|
|
Dans le type de barre d'adresse l'URL du service de calculatrice que nous avons créé. Puisqu'il est dans le répertoire racine d'IIS vous devez dactylographier le suivant adressez : http://localhost/Calculator/Service1.asmx. Il devrait ressembler à l'image ci-dessous.
|
|
Après que le service de calculatrice soit chargé, le clic ajoutent la référence. Cela ajoute une référence au service de calculatrice.
|
|
Pour utiliser l'outil de WSDL pour ajouter une référence à ce service de Web, le message de sollicitation de commande visuel ouvert du studio .NET, changent la chemise dans le message de sollicitation de commande en endroit où vous avez créé la calculatrice et dactylographiez ce qui suit :
|
|
WSDL « http://localhost/Calculator/Service1.asmx » /l : VB. Après que vous finissiez de dactylographier la commande, en solution l'explorateur, droit-cliquent la calculatrice, choisie ajouter et puis cliquer ajoutent l'article existant. Localiser Service1.vb, et puis cliquer pour le choisir. Cliquer ouvert.
|
| Appeler le service de la forme de Windows
|
|
Ouvrir Form1 et placer le code suivant. Se rappeler que nous appelons une méthode quand le bouton dans cette application est cliqué. Nous devons créer un exemple du localhost de classe de procuration. Service1 et appellent la fonction, passant un argument de corde. Le code pour celui ressemble à ceci :
|
|
Public Class Form1
Inherits System.Windows.Forms.Form
#Region " Windows Form Designer generated code "
#End Region
Dim myService As localhost.Service1 = New localhost.Service1()
'creating an instance
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As_
System.EventArgs) Handles MyBase.Load
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As_
System.EventArgs) Handles Button1.Click
MessageBox.Show("Sum is " & myService.Add(10, 20))
'calling the Add method in the Web Service returning the result in a messagebox
End Sub
End Class
|
|
|
Une fois que vous finissez avec l'application, courir la forme et cliquer sur le bouton. La somme de deux nombres sera montrée dans un MessageBox. Nous avons non seulement créé un service de Web mais avons également consommé le service dans l'autre application.
|
| Service 3 d'échantillon
|
|
Dans cette section nous établirons un service plus intéressant de Web qui renvoie un ensemble de données de l'AGITATION .NET, contenant l'ensemble complet des disques d'une table. Nous créerons notre propre table de base de données et accéderons aux données de la table avec ce service de Web. Commencer, ouvrir le Microsoft Access et créer une nouvelle base de données a appelé Currency. Créer une nouvelle table Table1 et ajouter trois colonnes appelées, code de pays, nom de pays et devise. Écrire quelques valeurs dans la table et les clôturer. Ouvrir le studio visuel .NET et choisir le service de Web d'asp .NET à partir du type calibre de projets. Traîner un raccordement d'OleDb de l'étiquette de données dans la boîte à outils et en utilisant la fenêtre de propriétés construire une corde de raccordement qui relie à la devise la base de données que nous avons créée. Commuter à la vue de code et commencer à écrire le code suivant.
|
|
Imports System
Imports System.Web.Services
Imports System.Data.OleDb
'import this namespace as we are working with an OleDb source
<WebService(Namespace := "http://tempuri.org/")> _
Public Class Service1 Inherits System.Web.Services.WebService
#Region " Web Services Designer Generated Code "
#End Region
<WebMethod()> Public Function GetData() As DataSet
'WebMethod name is GetData,generate data set
Dim da as OleDbDataAdapter=new OleDbDataAdapter("Select * From
Table1",_
OleDbConnection1)
'dataadapter
Dim ds As DataSet=new DataSet()
'declaring a new DataSet
da.Fill(ds, "Table1")
'filling dataadapter
Return ds
'returning dataset
End Function
End Class
|
|
| Consommation du service |
|
Une fois que vous finissez avec coder le service de Web nous devons consommer ce service. Pour faire cela, ouvrir une nouvelle application de Windows et de la drague de boîte à outils un DataGrid et un bouton. Notre intention ici est de charger les données de Table1 dans la base de données de devise dans le DataGrid quand nous cliquons le bouton. Maintenant, ajouter une référence de Web au service de Web en choisissant Reference->Add WebReference dans la fenêtre d'explorateur de solution. Écrire l'URL du service dans la barre d'adresse et le clic « ajoutent la référence ». Cela ajoute une référence au service de Web. Maintenant double-cliquer sur le bouton et écrire le code suivant.
|
|
Public Class Form1 Inherits System.Windows.Forms.Form
#Region " Windows Form Designer generated code "
#End Region
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e_
As System.EventArgs)Handles Button1.Click
Dim myService As New localhost.Service1()
'an instance of the Web service
Dim ds1 As DataSet = myService.GetData
DataGrid1.DataSource = ds1.Tables("Table1")
'filling the datagrid with table
End Sub
End Class
|
|
|
Une fois que vous finissez avec le code, courir l'application de Windows et cliquer sur le bouton. Les données que vous avez saisies dans Table1 de la base de données de devise seront montrées dans le datagrid. La différence, nous accédons aux données avec un service de Web. D'image les affichages ci-dessous cela.
|
 |
 |
Keywords:xml encryption, xml web services wsdl, xml specifications, xml signature
|
|
| HTML Quizes |
|
|
| XML Quizes |
|
|
| Browser Scripting Quizes |
|
|
| Server Scripting Quizes |
|
|
| .NET (dotnet) Quizes |
|
|
| Multimedia Quizes |
|
|
| Web Building Quizes |
|
|
| Java Quizes |
|
|
| Programming Langauges Quizes |
|
|
| Soft Skills Quizes |
|
|
|