ServiceReference Osztály

Definíció

Webszolgáltatás regisztrálása weblapon való használatra.

public ref class ServiceReference
public class ServiceReference
type ServiceReference = class
Public Class ServiceReference
Öröklődés
ServiceReference

Példák

Az alábbi példa bemutatja, hogyan adhat hozzá hivatkozást egy webszolgáltatáshoz a lapfeliratban a webszolgáltatás metódusainak szkriptből való meghívásához.

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

Megjegyzések

A webszolgáltatás-metódusok ECMAScriptből (JavaScript) való meghívásához meg kell adnia egy szolgáltatáshivatkozást a ASP.NET lapon, és alkalmaznia kell a ScriptServiceAttribute attribútumot a webszolgáltatás-osztály definíciójára. Ha a ASP.NET lapon a ScriptManager vagy ScriptManagerProxy vezérlőelemben szerepel egy webszolgáltatásra mutató szolgáltatáshivatkozás, a böngészőben a JavaScript-objektumok példányosodnak.

A proxyobjektumok a következők végrehajtására szolgálnak:

  • Aszinkron kérések létrehozása JavaScriptben webszolgáltatás-metódusokhoz,

  • Inicializálja a kiszolgálói adattípusok proxypéldányait, különösen a webes metódusok meghívásának bemeneti paramétereként való használathoz.

Note

A ServiceReference vezérlő csak ugyanabban a tartományban lévő szolgáltatásokhoz használható.

A webszolgáltatás helyét deklaratív módon úgy határozhatja meg, hogy hozzáad egy <asp:ServiceReference> elemet a <Services><asp:ScriptManager> lap eleméhez, majd beállítja annak attribútumátPath, ahogyan az az alábbi példában látható.

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

A tulajdonság használatával InlineScript jelezheti, hogy a proxygenerálási szkript beágyazott szkriptblokkként szerepel-e a lapon, vagy külön kéréssel szerezhető be.

Az osztály metódusával programozott módon is hozzáadhat objektumokat ServiceReference a gyűjteményen vagy a ScriptManager.ServicesScriptManagerProxy.ServicesAdd gyűjteményen ServiceReferenceCollection keresztül.

Konstruktorok

Name Description
ServiceReference()

Inicializálja a ServiceReference osztály új példányát.

ServiceReference(String)

Inicializálja az ServiceReference osztály új példányát egy megadott elérési úttal.

Tulajdonságok

Name Description
InlineScript

Lekéri vagy beállít egy értéket, amely jelzi, hogy a proxygenerálási szkript beágyazott szkriptblokkként szerepel-e a lapon, vagy egy külön kéréssel szerezhető be.

Path

Lekéri vagy beállítja a hivatkozott webszolgáltatás elérési útját.

Metódusok

Name Description
Equals(Object)

Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal.

(Öröklődés forrása Object)
GetHashCode()

Ez az alapértelmezett kivonatoló függvény.

(Öröklődés forrása Object)
GetProxyScript(ScriptManager, Control)

Proxyszkriptet biztosít egy származtatott ServiceReference objektumból, amelyet felül lehet bírálni testreszabásként.

GetProxyUrl(ScriptManager, Control)

Származtatott objektum proxy ServiceReference URL-címét felül lehet bírálni testreszabásként.

GetType()

Lekéri az Type aktuális példányt.

(Öröklődés forrása Object)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
ToString()

Olyan sztringet ad vissza, amely a tulajdonság vagy a Path típusnév értékét jelöli.

A következőre érvényes:

Lásd még