HTML Tutorials |
|
XML Tutorials |
|
Browser Scripting |
|
Server Scripting |
|
.NET (dotnet) |
|
Multimedia |
|
Web Building |
|
Java Tutorials |
|
Programming Langauges |
|
Soft Skills |
|
Database Tutorials |
|
Operating System |
|
Software Testing |
|
SAP Module |
|
Networking Programming |
|
Microsoft Office |
|
Accounting |
|
|
XML Netz-Dienstleistungen |
Beispielservice 1
|
In diesem Abschnitt verursachen wir einen einfachen Netzservice. Beim Arbeiten mit Netz instandh�lt, werden die namespaces, die angefordert werden, zusammengefa�t, wie folgt:
|
System.Web.Services:
|
Namespace besteht ein minimaler und kompletter Satz Arten, die ben�tigt werden, um einen Netzservice zu errichten
|
System.Web.Services.Description:
|
Dieses erlaubt uns, auf WSDL programmatically einzuwirken
|
System.Web.Services.Discovery:
|
Diese Arten erlauben einem Verbraucher, die Netzdienstleistungen zu entdecken, die auf eine gegebene Maschine angebracht werden
|
System.Web.Services.Protocols:
|
Dieses namespace definiert eine Anzahl von Arten, die Anforderungprotokolle darstellt (HTTP-GET, HTTP-POST und SEIFE)
|
Das System.Web.Services namespace
|
Das System.Web.Services namespace ist das namespace, das wir normalerweise in die meisten Projekten benutzen, w�hrend die Arten, die wir ben�tigen, bereits in diesem namespace definiert werden. Das Folgen sind die Mitglieder des System.Web.Services namespace:
|
WebMethodAttribute: Ein <WebMethod hinzuf�gend () >, bildet Attribut einer Methode in einem Netzservice die Methode abrufbar von einem Remoteklienten durch HTTP. Dieses Attribut stellt die Funktionalit�t der Methode heraus, an der sie an der �u�eren Welt angewendet wird.
|
WebService: Dieses definiert die wahlweise freigestellte niedrige Kategorie f�r Netz-Dienstleistungen.
|
WebServiceAttribute: Das WebService Attribut kann verwendet werden, um Informationen einem Netzservice hinzuzuf�gen, der sie beschreiben kann ist Funktionalit�t.
|
WebServiceBindingAttribute: Erkl�rt ein verbindliches Protokoll, das eine gegebene Netzservice-Methode einf�hrt.
|
Kodierung eines Beispielservices |
Wir verursachen jetzt einen Beispielservice. Dieses ein einfacher Service, der einen gegebenen Abstand von Kilometer zu Meilen und umgekehrt umwandelt. Sichtstudio .NET beginnen und ein neues Projekt vom File->New-> Projekt �ffnen. In der Projekt-Art Scheibe auserw�hlte grundlegende sichtlichprojekte und in den Schablonen Asp .NET vorw�hlen Netz-Service, diesen Service als ConvertUnits und Klicken O.K. nennen. Der neue Projektdialog sieht wie das Bild unten aus
|
Durch R�ckstellung verursachen Netzservice-Projekte automatisch ein neues virtuelles Verzeichnis unter IIS und werden unsere Akten dort speichern. Zur Codeansicht des Netzservices schalten, um dich zum Code hinter Akte zu nehmen, die eine Akte mit .asmx.vb Verl�ngerung ist. Wenn du das L�sung Forscherfenster beachtest, findest du vier Akten, die die Global.asax, Service1.asmx, ConvertUnits.vsdisco und die Web.config Akte sind. Die Global.asax Akte erlaubt uns, auf Globalniveau F�lle zu reagieren, erlaubt die Web.config Akte uns, unseren neuen Netzservice declaratively zusammenzubauen, ist die .asmx Akte eine Netzservice-Akte, die die Methoden des Services definieren und die .vsdisco Akte eine Entdeckungakte ist, die eine XML Beschreibung der Netzdienstleistungen an einem gegebenen URL enth�lt.
|
Durch R�ckstellung sieht der Code hinter Akte wie dieses aus, wenn du sie �ffnest:
|
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
|
|
Wir errichten auf dem obenerw�hnten Code hinter Akte. Wir f�hren etwas einfache Funktionalit�t ein, die unsere eigenen Methoden addiert. Der Service, den wir errichten, wandelt den Abstand um und umgekehrt, der in den Kilometern zu den Meilen ausgedr�ckt wird. Der Code f�r den sieht wie dieses aus:
|
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
|
|
Die Fertigung den Code, ihm nachlaufen, indem Sie Debug->Start vom Hauptmen� vorw�hlen oder indem Sie F5 auf der Tastatur bet�tigen. Durch R�ckstellung arbeitet unsere Datenbanksuchroutine als behelfsm��iger Klient und zeigt eine HTML Ansicht des Methoden Marktes mit dem <WebMethod () > Attribut. Hier klicken, um die Seite anzusehen, die erstes l�dt, wenn du diesen Service laufen l��t. Die Verbindung ConvertUnits an klicken. Das Klicken auf der Verbindung nimmt dich zu einer Seite, die area per informazioniarten liefert, die uns erlauben, etwas Werte in sie einzutragen. Etwas Wert in das EnterUnit eintragen auffangen und im FromUnits auffangen eintragen entweder M, oder K und im eingeordneten ToUnits tragen K oder M. ein. Wenn du umwandeln m�chtest, 1000 Kilometer in Meilen dann f�ngst du Notwendigkeit, 1000 im EnterUnit einzugeben, K im FromUnits und M im ToUnits auf. Sobald du mit ihm getan wirst, ruft Klicken hervor. Dieses ruft die Methode hervor, die wir in Code schrieben und das Resultat wird �ber ein XML Attribut zur�ckgebracht. Hier klicken, um den Service jetzt laufen zu lassen. Das ist alles, das es nimmt, um einen einfachen Netzservice zu verursachen.
|
Beispielservice 2
|
In diesem Abschnitt verursachen wir einen Rechner-Netzservice, dem die Arbeiten, die einem Rechner �hnlich sind und Betriebe, wie hinzuf�gen, subtrahieren, multiplizieren, sich teilen durchf�hrt und wir diesen Netzservice mit einer grundlegenden Windows sichtlichanwendung verbrauchen. Um zu beginnen, ein neues Projekt und auserw�hltes Asp .NET ein Netz zu �ffnen einen neuen Netzservice dem vorhandenen Asp .NET instandhalten oder hinzuf�gen Netzservice-Projekt indem Sie in gel�ster Form den Projektname Forscher recht-klicken und Add->Add Netzservice vorw�hlen. Dieses Projekt als Rechner nennen, den Code hinter Akte �ffnen und anfangen, den folgenden Code zu schreiben.
|
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
|
|
Sobald, wenn du den Code beendest, den Service laufen lassen, indem Sie Debug->Start vom Hauptmen� vorw�hlen oder indem Sie F5 auf der Tastatur bet�tigen. Der Service, der l�dt, kann angesehen werden, indem man hier klickt. Du kannst alle Methoden ansehen, die wir im Code zusammen mit der Methode Beschreibung auf dieser Seite verursachten. Auch du kannst etwas Werte in die area per informazioni eintragen und den Service pr�fen. Wir verbrauchen diesen Service in einer Windows Form.
|
Verbrauchen dieses Netzservices
|
Ein neues grundlegendes sichtlichprojekt �ffnen und Windows Anwendung von der Schablone vorw�hlen. Vom Toolbox eine Taste der Form hinzuf�gen. Unsere Absicht hier ist, den Netzservice zu verbrauchen, den wir mit dieser Windows Anwendung verursachten. Wenn wir die Taste anklicken, benennt sie die Methode, die wir in ihr sind Klickenfall spezifizieren und bringt das errechnete Resultat in einem MessageBox zur�ck.
|
Hinzuf�gen des Netz-Service-Hinweises auf der Windows Anwendung
|
Wir k�nnen einen Hinweis auf dem Netzservice in zwei M�glichkeiten, mit L�sung Forscher und dem Verwenden des WSDL Werkzeugs hinzuf�gen. Im L�sung Forscherrecht Hinweise an klicken und auserw�hlt Netz-Hinweis addieren. Das erschlie�en eine Schablone, die dem Bild unten �hnlich ist.
|
In der Adresse Stabart das URL des Rechnerservices, den wir verursachten. Da er im Wurzelverzeichnis von IIS ist, mu�t du das folgende schreiben wendest: http://localhost/Calculator/Service1.asmx. Er sollte wie das Bild unten aussehen.
|
Nachdem der Rechnerservice geladen ist, addiert Klicken Hinweis. Das f�gt einen Hinweis auf dem Rechnerservice hinzu.
|
Um WSDL Werkzeug zu benutzen um einen Hinweis auf diesem Netzservice hinzuzuf�gen, �ndern ge�ffnetes Sichtbefehlseingabeformat des studios .NET, das Heft im Befehlseingabeformat zur Position in der du Rechner herstelltest und das folgende schreibst:
|
WSDL �http://localhost/Calculator/Service1.asmx� /l: VB. Nachdem du beendest, den Befehl zu schreiben, in gel�ster Form f�gen Forscher, der Rechtklicken Rechner, auserw�hlt hinzu und klicken dann addieren vorhandenes Einzelteil. Service1.vb lokalisieren und dann klicken, um es vorzuw�hlen. Ge�ffnetes anklicken.
|
Benennen des Services von der Windows Form
|
Form1 �ffnen und den folgenden Code setzen. Zur�ckrufen, da� wir eine Methode benennen, wenn die Taste in dieser Anwendung angeklickt wird. Wir m�ssen einen Fall des Vollmachtkategorie localhost verursachen. Service1 und benennen die Funktion und f�hren ein Zeichenketteargument. Der Code f�r den sieht wie dieses aus:
|
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
|
|
Sobald du die Anwendung beendest, die Form laufen lassen und die Taste an klicken. Die Summe von zwei Zahlen wird in einem MessageBox angezeigt. Wir verursachten nicht nur, einen Netzservice aber verbrauchten auch den Service in anderer Anwendung.
|
Beispielservice 3
|
In diesem Abschnitt errichten wir einen interessanteren Netzservice, der einen AUFHEBEN .NET Datensatz zur�ckbringt und enthalten den vollen Satz der Aufzeichnungen von einer Tabelle. Wir stellen unsere eigene Datenbanktabelle her und machen die Daten von der Tabelle mit diesem Netzservice zug�nglich. Zu beginnen, Microsoft Access zu �ffnen und eine neue Datenbank zu verursachen nannte Currency. Eine neue Tabelle Table1 herstellen und drei genannte Spalten, Landeskennzahl, Land-Namen und W�hrung addieren. Etwas Werte in die Tabelle eintragen und ihn schlie�en. Sichtstudio .NET �ffnen und Asp .NET Netzservice von der Projektart Schablone vorw�hlen. Einen OleDb Anschlu� vom Datenvorsprung im Toolbox schleppen und mit dem Eigenschaften Fenster eine Anschlu�zeichenkette errichten, die an W�hrung die Datenbank anschlie�t, die wir verursachten. Zur Codeansicht schalten und anfangen, den folgenden Code zu schreiben.
|
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
|
|
Verbrauchen des Services |
Sobald du die Kodierung des Netzservices beendest, m�ssen wir diesen Service verbrauchen. Um das zu tun, eine neue Windows Anwendung und von der Toolboxgegenkraft �ffnen ein DataGrid und eine Taste. Unsere Absicht hier ist, die Daten von Table1 in der W�hrungdatenbank in das DataGrid zu laden, wenn wir die Taste anklicken. Jetzt einen Netzhinweis auf dem Netzservice hinzuf�gen, indem Sie Reference->Add WebReference im L�sung Forscher-Fenster vorw�hlen. Das URL des Services in den Adresse Stab eintragen und Klicken �addiert Hinweis�. Das f�gt einen Hinweis auf dem Netz-Service hinzu. Jetzt Doppeltklicken auf der Taste und schreibt den folgenden Code.
|
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
|
|
Sobald du den Code beendest, die Windows Anwendung laufen lassen und die Taste an klicken. Die Daten, die du in Table1 der W�hrungdatenbank eingabst, werden im datagrid angezeigt. Der Unterschied, machen wir die Daten mit einem Netzservice zug�nglich. Die des Bildes Anzeigen unten das.
|
 |
 |
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 |
|
Database Quizes |
|
Operating System Quizes |
|
Software Testing Quizes |
|
SAP Module Quizes |
|
Networking Programming Quizes |
|
Microsoft Office Quizes |
|
Accounting Quizes |
|
|