ServiceReference Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Registreert een webservice voor gebruik op een webpagina.
public ref class ServiceReference
public class ServiceReference
type ServiceReference = class
Public Class ServiceReference
- Overname
-
ServiceReference
Voorbeelden
In het volgende voorbeeld ziet u hoe u een verwijzing naar een webservice toevoegt in de paginamarkeringen om de webservicemethoden aan te roepen vanuit een script.
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<style type="text/css">
body { font: 11pt Trebuchet MS;
font-color: #000000;
padding-top: 72px;
text-align: center }
.text { font: 8pt Trebuchet MS }
</style>
<title>Calling Web Methods</title>
</head>
<body>
<form id="Form1" runat="server">
<asp:ScriptManager runat="server" ID="scriptManagerId">
<Scripts>
<asp:ScriptReference Path="Scripts.js" />
</Scripts>
<Services>
<asp:ServiceReference Path="WebService.asmx" />
</Services>
</asp:ScriptManager>
<div>
<h2>Calling Web Methods</h2>
<table>
<tr align="left">
<td>Method that does not return a value:</td>
<td>
<!-- Getting no retun value from
the Web service. -->
<button id="Button1"
onclick="GetNoReturn()">No Return</button>
</td>
</tr>
<tr align="left">
<td>Method that returns a value:</td>
<td>
<!-- Getting a retun value from
the Web service. -->
<button id="Button2"
onclick="GetTime(); return false;">Server Time</button>
</td>
</tr>
<tr align="left">
<td>Method that takes parameters:</td>
<td>
<!-- Passing simple parameter types to
the Web service. -->
<button id="Button3"
onclick="Add(20, 30); return false;">Add</button>
</td>
</tr>
<tr align="left">
<td>Method that returns XML data:</td>
<td>
<!-- Get Xml. -->
<button id="Button4"
onclick="GetXmlDocument(); return false;">Get Xml</button>
</td>
</tr>
<tr align="left">
<td>Method that uses GET:</td>
<td>
<!-- Making a GET Web request. -->
<button id="Button5"
onclick="MakeGetRequest(); return false;">Make GET Request</button>
</td>
</tr>
</table>
</div>
</form>
<hr/>
<div>
<span id="ResultId"></span>
</div>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<style type="text/css">
body { font: 11pt Trebuchet MS;
font-color: #000000;
padding-top: 72px;
text-align: center }
.text { font: 8pt Trebuchet MS }
</style>
<title>Calling Web Methods</title>
</head>
<body>
<form id="Form1" runat="server">
<asp:ScriptManager runat="server" ID="scriptManagerId">
<Scripts>
<asp:ScriptReference Path="Scripts.js" />
</Scripts>
<Services>
<asp:ServiceReference Path="WebService.asmx" />
</Services>
</asp:ScriptManager>
<div>
<h2>Calling Web Methods</h2>
<table>
<tr align="left">
<td>Method that does not return a value:</td>
<td>
<!-- Getting no retun value from
the Web service. -->
<button id="Button1"
onclick="GetNoReturn()">No Return</button>
</td>
</tr>
<tr align="left">
<td>Method that returns a value:</td>
<td>
<!-- Getting a retun value from
the Web service. -->
<button id="Button2"
onclick="GetTime(); return false;">Server Time</button>
</td>
</tr>
<tr align="left">
<td>Method that takes parameters:</td>
<td>
<!-- Passing simple parameter types to
the Web service. -->
<button id="Button3"
onclick="Add(20, 30); return false;">Add</button>
</td>
</tr>
<tr align="left">
<td>Method that returns XML data:</td>
<td>
<!-- Get Xml. -->
<button id="Button4"
onclick="GetXmlDocument(); return false;">Get Xml</button>
</td>
</tr>
<tr align="left">
<td>Method that uses GET:</td>
<td>
<!-- Making a GET Web request. -->
<button id="Button5"
onclick="MakeGetRequest(); return false;">Make GET Request</button>
</td>
</tr>
</table>
</div>
</form>
<hr/>
<div>
<span id="ResultId"></span>
</div>
</body>
</html>
Opmerkingen
Als u webservicemethoden wilt aanroepen vanuit ECMAScript (JavaScript), moet u een servicereferentie opnemen op de pagina ASP.NET en het kenmerk ScriptServiceAttribute toepassen op de definitie van de webserviceklasse. Als u een servicereferentie naar een webservice opneemt in het besturingselement ScriptManager of ScriptManagerProxy binnen de ASP.NET pagina, worden JavaScript-objecten geïnstantieerd in de browser.
De proxyobjecten worden gebruikt om het volgende te doen:
Asynchrone aanvragen maken in JavaScript naar webservicemethoden,
Initialiseer exemplaren van proxy's van servergegevenstypen, met name voor gebruik als invoerparameters voor het aanroepen van webmethoden.
Note
Het ServiceReference besturingselement kan alleen worden gebruikt voor services in hetzelfde domein.
U kunt de locatie van de webservice declaratief definiëren door een <asp:ServiceReference> element toe te voegen aan het <Services> element in het <asp:ScriptManager> element op de pagina en vervolgens het Path kenmerk ervan in te stellen, zoals wordt weergegeven in het volgende voorbeeld.
<asp:ScriptManager runat="server" ID="scriptManager">
<Services>
<asp:ServiceReference Path="~/WebServices/SimpleWebService.asmx" />
</Services>
</asp:ScriptManager>
U kunt de InlineScript eigenschap gebruiken om aan te geven of het script voor het genereren van de proxy is opgenomen in de pagina als een inlinescriptblok of wordt verkregen door een afzonderlijke aanvraag.
U kunt ook programmatisch een ServiceReference object toevoegen via de ScriptManager.Services of ScriptManagerProxy.Services verzameling met behulp van de Add methode van de ServiceReferenceCollection klasse.
Constructors
| Name | Description |
|---|---|
| ServiceReference() |
Initialiseert een nieuw exemplaar van de ServiceReference klasse. |
| ServiceReference(String) |
Initialiseert een nieuw exemplaar van de ServiceReference klasse met een opgegeven pad. |
Eigenschappen
| Name | Description |
|---|---|
| InlineScript |
Hiermee wordt een waarde opgehaald of ingesteld die aangeeft of het script voor het genereren van de proxy is opgenomen in de pagina als een inlinescriptblok of wordt verkregen door een afzonderlijke aanvraag. |
| Path |
Hiermee wordt het pad van de webservice waarnaar wordt verwezen, opgehaald of ingesteld. |
Methoden
| Name | Description |
|---|---|
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetProxyScript(ScriptManager, Control) |
Biedt een proxyscript van een afgeleid ServiceReference object dat kan worden overschreven als aanpassing. |
| GetProxyUrl(ScriptManager, Control) |
Biedt een proxy-URL van een afgeleid ServiceReference object kan worden overschreven als aanpassing. |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| ToString() |
Retourneert een tekenreeks die de waarde van de Path eigenschap of de typenaam vertegenwoordigt. |