如何在c#中使用ajax调用类方法

时间:2015-07-09 11:14:52

标签: c# ajax

我的c#项目中有一个班级。我们说 Sample.cs
我想用ajax调用它的方法,但不知道如何在ajax的url中使用类名,我这样做,但它不起作用

$.ajax({
                    type: "POST",
                    url: "Sample.cs/MethodName",
                    data: '{Id: "' + Id + '"}',
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: function (response) {
}
});

请帮助伙伴......

2 个答案:

答案 0 :(得分:1)

如果您想直接调用类的方法,则不能。 您只能拨打HTTP请求。

如果您正在使用MVC,您可以做的是创建一个返回类型为JsonResult的Action方法,(从您的代码片段开始,看起来您期待json响应 )从此操作方法调用您的方法并返回相同的方法。或者,您可以创建WebApi服务并在ApiController方法中调用该方法。

答案 1 :(得分:1)

您还可以创建WCF Rest服务并从您的js中调用它 您在C#中的接口中创建一个方法,它将对您的Http请求做出反应

这是一个例子

    [OperationContract]
    [WebInvoke(Method = "GET", //React on GET method
            ResponseFormat = WebMessageFormat.Json, //Return Json format
            BodyStyle = WebMessageBodyStyle.Wrapped, //Wrap request and response
            UriTemplate = "login/{id}/{mdp}")] //Template Uri
    bool Login(string id, string mdp);

如果您在网址上收到GET方法,则会调用此方法 SERVER_NAME /登录/ MYID / MYPASSWORD

注意:您的所有参数必须是string

类型

如果你不知道什么是REST服务,这里有一些链接
Wikipedia

如果您想学习如何在C#中创建REST webService:
codeProject

可悲的是,我没有足够的意义发布更多链接...

希望它有所帮助!