Sdílet prostřednictvím


ServiceReference Třída

Definice

Zaregistruje webovou službu pro použití na webové stránce.

public ref class ServiceReference
public class ServiceReference
type ServiceReference = class
Public Class ServiceReference
Dědičnost
ServiceReference

Příklady

Následující příklad ukazuje, jak přidat odkaz na webovou službu do značky stránky volat metody webové služby ze skriptu.

<%@ 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>

Poznámky

Pokud chcete volat metody webové služby z ECMAScriptu (JavaScript), musíte na stránce ASP.NET zahrnout odkaz na službu a použít ScriptServiceAttribute atribut na definici třídy webové služby. Pokud do ovládacího prvku nebo ScriptManagerProxy do ScriptManager stránky ASP.NET zahrnete odkaz na webovou službu, vytvoří se v prohlížeči instance javascriptových objektů.

Objekty proxy se použijí k provedení následujících kroků:

  • Provádění asynchronních požadavků na metody webové služby v JavaScriptu

  • Inicializace instancí proxy serverových datových typů, zejména pro použití jako vstupní parametry pro vyvolání webových metod.

Poznámka

Ovládací ServiceReference prvek lze použít pouze pro služby ve stejné doméně.

Umístění webové služby můžete deklarativně definovat přidáním <asp:ServiceReference> elementu <Services> uvnitř elementu <asp:ScriptManager> na stránce a následným nastavením jeho Path atributu, jak je znázorněno v následujícím příkladu.

<asp:ScriptManager runat="server" ID="scriptManager">  
  <Services>  
    <asp:ServiceReference Path="~/WebServices/SimpleWebService.asmx" />  
  </Services>  
</asp:ScriptManager>  

Vlastnost můžete použít InlineScript k označení, jestli je skript generování proxy serveru zahrnutý na stránce jako blok vloženého skriptu nebo je získán samostatným požadavkem.

Můžete také programově přidat ServiceReference objekt prostřednictvím ScriptManager.Services kolekce nebo ScriptManagerProxy.Services pomocí Add metody ServiceReferenceCollection třídy .

Konstruktory

ServiceReference()

Inicializuje novou instanci ServiceReference třídy .

ServiceReference(String)

Inicializuje novou instanci ServiceReference třídy se zadanou cestou.

Vlastnosti

InlineScript

Získá nebo nastaví hodnotu, která označuje, zda je skript generování proxy zahrnut na stránce jako blok vloženého skriptu nebo je získán samostatným požadavkem.

Path

Získá nebo nastaví cestu odkazované webové služby.

Metody

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetProxyScript(ScriptManager, Control)

Poskytuje skript proxy z odvozeného ServiceReference objektu, který lze přepsat jako přizpůsobení.

GetProxyUrl(ScriptManager, Control)

Poskytuje adresu URL proxy z odvozeného ServiceReference objektu lze přepsat jako přizpůsobení.

GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje hodnotu Path vlastnosti nebo název typu.

Platí pro

Viz také