从jQuery将GUID传递给WebMethod

时间:2014-08-18 16:37:27

标签: c# jquery post

我有一个调用C#webmethod的jquery函数。我试图将GUID传递给WebMethod但我一直收到错误。我得到的唯一细节是输入字符串格式不正确。

GUID作为字符串传递给我的jquery函数。然后通过发布数据将其传递给WebMethod。它作为nvarchar(MAX)字段中的字符串保存到数据库中。

我的jquery函数如下所示:

function SaveLike(ID_IN) {

    var jsonText = JSON.stringify({ ID: ID_IN });
    var lblID = "#lblLike" + ID_IN;

    $.ajax({
        type: "POST",
        url: "http://test.mainehousing.org/Services/ActivityFeedService.aspx/SaveLike",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        data: jsonText,
        success: function (msg) {
            $(lblID).text(msg.d);
        },
        error: function (xhr, status, error) {
            alert(error);
        }
    });
}

和我的C#WebMethod看起来像这样:

[System.Web.Services.WebMethod()]
    public static string SaveLike(string ID_IN)
    {
        //
        ActivityFeed.clsFeed objAF = new ActivityFeed.clsFeed();
        ActivityFeed.clsFeeds objAFS = new ActivityFeed.clsFeeds();
        int i;
        string oLikes = "";
        string oSTR;

        objAF = new ActivityFeed.clsFeed();
        objAF.SubFeedItemID = ID_IN;
        objAF.SubFeedEmployeeID = HttpContext.Current.Session["globalEmpID"].ToString();
        objAF.SubFeedIndicatorID = 1;
        objAF.SubFeedComment = "";
        objAF.SubFeedItemDate = DateTime.Now;
        objAF.SaveActivityFeedLike();
    }

我已经试图解决这个问题好几天了,我真的很难过。有人有主意吗?任何帮助将不胜感激。

由于 阿曼达

1 个答案:

答案 0 :(得分:0)

顺便说一句是C#错误还是AJAX错误? 唯一的问题我注意到你的web方法参数的名称... 希望您的网络方法应该像以下一样

[System.Web.Services.WebMethod()]
public static string SaveLike(string ID)
{
    //
    ActivityFeed.clsFeed objAF = new ActivityFeed.clsFeed();
    ActivityFeed.clsFeeds objAFS = new ActivityFeed.clsFeeds();
    int i;
    string oLikes = "";
    string oSTR;

    objAF = new ActivityFeed.clsFeed();
    objAF.SubFeedItemID = ID_IN;
    objAF.SubFeedEmployeeID = HttpContext.Current.Session["globalEmpID"].ToString();
    objAF.SubFeedIndicatorID = 1;
    objAF.SubFeedComment = "";
    objAF.SubFeedItemDate = DateTime.Now;
    objAF.SaveActivityFeedLike();
}