zoukankan      html  css  js  c++  java
  • ScriptManager调用WebService注意事项

    Step 1安装ASPAJAXExtSetup.msi这个包,就不提供链接了。

    Step 2:在画面上添加ScriptManger控件,控件来自于工具栏Ajax Extesions。空间内部如下。

        <asp:ScriptManager ID="ScriptManager1" runat="server">
            <Services>
                <asp:ServiceReference Path="~/WebService.asmx" />
            </Services>
        </asp:ScriptManager>

    中间的路径指向的是WebService的地址。

    Step 3:在配置文件中添加节点

    在<System.Web>下面添加


        <httpHandlers>
          <remove verb="*" path="*.asmx"/>
          <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
          <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
          <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>
        </httpHandlers>
        <httpModules>
          <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
        </httpModules>


        Step 4:在WebService的类上添加属性[System.Web.Script.Services.ScriptService]

    如:[System.Web.Script.Services.ScriptService]
    public class WS: System.Web.Services.WebService {

    Step 5:用JS来调用

        <script type="text/javascript" language="javascript">
            function sc(result) {
                alert(result);
            }
            function fa(ex) {
                alert("failure:" + ex.get_message());
            }

            WS.HelloWorld(sc, fa);

        </script>

    说明:WS对应于我们新建的WebService的类名。HelloWorld后面的空格中,最后两个参数是成功后的回调函数和失败后的回调函数。除去这两个参数后,第一个参数开始是WebService的

    HelloWorld方法中所需要的入参,如果没有,就不填,此处即没有。如果HelloWorld的定义如下

    .....HelloWorld(string abc)....

    则调用时应该为 WS.HelloWorld("eft",sc, fa);

    多参数的场合依次类推。

  • 相关阅读:
    - 错误笔记
    只是一个没有人知道的蒟蒻
    省选前模板复习
    数学知识小结#1
    写在NOIP2018后
    Atcoder&CodeForces杂题11.7
    Atcoder&CodeForces杂题11.6
    [NOIP11.1模拟赛]补番报告
    [JZOJ5281]钦点题解--瞎搞+链表
    [JZOJ5280]膜法师题解--思维+前缀和
  • 原文地址:https://www.cnblogs.com/huangxue/p/2284981.html
Copyright © 2011-2022 走看看