首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从C# WebMethod访问单独的WebMethod文件

从C# WebMethod访问单独的WebMethod文件
EN

Stack Overflow用户
提问于 2015-05-26 12:25:32
回答 1查看 813关注 0票数 2

如果我在默认的c#文件中有WebMethod代码,我可以让它工作,但是我不能让它为单独的c#文件工作--我得到了一个“未定义的webmethods”。

我将脚本管理器设置为EnablePageMehods = true

我的另一堂课是这样的

代码语言:javascript
复制
public class TestClass
{

    [WebMethod]
    public static string Test()
    {
        string a = "Hello Worlds";
        return a;
    }

}

JS看起来像这样

代码语言:javascript
复制
function testwebmethod() {
       PageMethods.Test(onSucceed, onError);
   }
   function onSucceed(result) {
       alert(result);
   }
   function onError(result) {
   }

我尝试过从System.Web.UI.Page继承,因为它在defualt文件中工作,但它仍然没有avil。

提前感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-26 12:52:05

WebMethod属性仅使在两个位置指定的方法可以从客户端调用:文件后面的ASPX代码和ASMX web服务代码隐藏文件。任何其他地方,它没有任何影响。

在ASPX页面上,它定义了仅适用于给定页面的web可访问方法。在ASMX web服务上,它的意思是像功能一样聚集在一起,使所有页面都可以访问它。(从概念上讲,一旦定义了端点,只要您知道URLS在哪里,就可以从客户端做任何您想做的事情。)

如果您想为所有AJAX服务器端调用创建一个单独的类,那么向项目中添加一个ASMX服务并调用它。您可以查看这个SO post:Calling ASMX Web Service from Javascript以获得更多信息。

从System.Web.UI.Page继承不起作用的原因是,在ASP.NET了解如何将web请求路由到它之前,需要有一个ASPX声明性页面来指向给定的页面派生类。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30458547

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档