| 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 |
|
|
| Computer Basics |
|
|
|
| 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 |
|
|
| Computer Basics Quizes |
|
|
|