C# 在aspx文件中包含webservice函数

C# 在aspx文件中包含webservice函数,c#,web-services,C#,Web Services,不久前,我读了一篇文章,解释了如何将webservice函数添加到我的aspx文件中,以便ajax回调调用。现在我找不到这篇文章或任何其他文档 有人在用这个吗?你能解释一下怎么做吗 谢谢 Endre您几乎可以调用任何具有属性[WebMethod] 也许是你读的那篇文章?我要记住,通常最好将你的web服务与调用它们的页面分开 要在aspx文件中创建一个简单的web服务,可以使用以下内容: <%@ WebService Language="C#" Class="MyWebService" %&

不久前,我读了一篇文章,解释了如何将webservice函数添加到我的aspx文件中,以便ajax回调调用。现在我找不到这篇文章或任何其他文档

有人在用这个吗?你能解释一下怎么做吗

谢谢


Endre

您几乎可以调用任何具有属性
[WebMethod]


也许是你读的那篇文章?

我要记住,通常最好将你的web服务与调用它们的页面分开

要在aspx文件中创建一个简单的web服务,可以使用以下内容:

<%@ WebService Language="C#" Class="MyWebService" %>

using System;
using System.Web;
using System.Web.Services;

[WebService(Namespace = "http://www.example.com/webservices/MyWebService, Description = "My Web Service")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class MyWebService : WebService
{

    [WebMethod(Description = "Add two numbers and return the result.")]
public int AddNumbers(int first, int second) {
        return first + second;
}

}

使用制度;
使用System.Web;
使用System.Web.Services;
[WebService(命名空间=”http://www.example.com/webservices/MyWebService,Description=“我的Web服务”)]
[WebServiceBinding(ConformsTo=WsiProfiles.BasicProfile1_1)]
公共类MyWebService:WebService
{
[WebMethod(Description=“添加两个数字并返回结果。”)]
公共整数地址编号(整数第一,整数第二){
返回第一个+第二个;
}
}
如果您正在寻找可靠的跨平台动态JavaScript组件,它可以与您的web服务通信,我会去看看(我使用它,并强烈推荐它)


或者,您可以使用jQuery之类的工具访问REST接口,或者自己解析SOAP响应中的XML。

我认为您需要将该方法标记为[WebMethod]

根据上述条款:

  • 方法必须是静态的
  • 该方法需要用[WebMethod()]修饰
  • 如果要对该方法进行ASP.NET AJAX回调,则需要使用[ScriptMethod()]修饰该方法
  • 公共部分类产品:System.Web.UI.Page

    { [System.Web.Services.WebMethod()] [System.Web.Script.Services.ScriptMethod()]

    公共静态列表GetProducts(int CategryId) {

    //将您的逻辑放在这里以获取产品列表
    }

    -1:webservice+ajax要求
    [ScriptService]
    [ScriptMethod]
    这会创建一个完整的Web服务,而不是我想要的。鲁本斯·法里亚斯:不,不是。”要从ECMAScript(JavaScript)调用Web服务方法,必须应用ScriptServiceAttribute":我同意你的观点,任何严肃的web服务都不应该按照我所问的方式制作。但是在这个项目中,我需要一个web服务,它只是另一个web服务的代理,而且它只在这个地方我需要它。我现在觉得我的问题完全清楚了,但我希望这个web服务驻留在一个同样包含普通web服务的aspx页面中表单内容。正因为如此,我认为你的解决方案不适合我。这不是这篇文章,但谢谢你的链接。我更喜欢那里的aproche,而不是我读的那篇。