zoukankan      html  css  js  c++  java
  • Web Service 与 PageMethods 初步认识

    我来介绍一下PageMethods 这个方法的使用 使用前首先要启用 启用方法如下:
    <asp:scriptManager ID="scriptManager1" runat="server" EnablePageMethods="True" /> EnablePageMethods 一定会要设为true,
    这样我门才能在 客户端调用服务器的方法 下面有个详细的例题
    在 客户端代买如下
    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" runat="server">
         <title>Untitled Page</title>
         <script language="javascript" type="text/javascript">
    // <!CDATA[
    function   GetServerTime() {
    PageMethods.GetServerTime();//这个方法就是 服务器的方法
    }
    // ]]>
    </script>
    </head>
    <body>
         <form id="form1" runat="server">
             <asp:scriptManager ID="scriptManager1" runat="server" EnablePageMethods="True" />
             <div>
    <input type="button" value="服务器时间" id="btnGetServerTime" onclick="GetServerTime()" />
    <span id="result" />
    </div>
         </form>
             </body>
    </html>
    下面 后置文件.cs
    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    public partial class _Default : System.Web.UI.Page
    {
         protected void Page_Load(object sender, EventArgs e)
         {
         }
         [System.Web.Services.WebMethod] //这个属性 必不可少的
         public static string GetServerTime()   //静态的
         {
             return DateTime.Now.ToString();
         }
    }

    总结ASP.NET AJAX在客户端JavaScript中异步调用服务器端Web Service,我们需要:

    1 为Web Service类或需要暴露给客户端的Web Service方法添加[ScriptService]
          属性;

    2 为Web Service中需要暴露给客户端的方法添加[WebMethod]属性;

    3 在页面中的ScriptManager控件中添加对该Web Service的引用;

    4 在客户端使用如下JavaScript语法调用该Web Service:
          [NameSpace].[ClassName].[MethodName](param1, param2,..., callbackFunction)

    5 为客户端异步调用指定回调函数,在回调函数中接收返回值并进一步处理。
    使用ASP.NET AJAX在客户端JavaScript中异步调用定义在ASP.NET页面中的方法,我们需要:

    1 将该方法声明为公有(public);

    2 将该方法声明为类方法(C#中的static,VB.NET中的Shared),而不是实例方法;

    3 为该方法添加[WebMethod]属性;

    4 将页面中ScriptManager控件的EnablePageMethods属性设置为true;

    5 在客户端使用如下JavaScript语法调用该页面方法:
          PageMethods.[MethodName](param1, param2,..., callbackFunction);

    6 为客户端异步调用指定回调函数,在回调函数中接收返回值并进一步处理

  • 相关阅读:
    遥控按键上报键值映射问题
    AutoLock类
    Mutex互斥锁
    c++ 字符串和数字转换时的特殊处理
    pytorch实现MLP并在MNIST数据集上验证
    python实现直方图均衡化,理想高通滤波与高斯低通滤波
    python实现贝叶斯网络的概率推导(Probabilistic Inference)
    python+opencv实现车牌定位
    python添加高斯噪声和椒盐噪声,实现中值滤波和均值滤波,实现Roberts算子和Sobel算子
    c++学习笔记_6
  • 原文地址:https://www.cnblogs.com/cnaspnet/p/1618795.html
Copyright © 2011-2022 走看看