我有一个调用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();
}
我已经试图解决这个问题好几天了,我真的很难过。有人有主意吗?任何帮助将不胜感激。
由于 阿曼达
答案 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();
}