"Message":"Invalid JSON primitive: RecordId."

Posted by Radhi on Stack Overflow See other posts from Stack Overflow or by Radhi
Published on 2010-03-15T08:43:02Z Indexed on 2010/03/15 8:49 UTC
Read the original article Hit count: 894

Filed under:

getting error in ajax call from jquery.

here is my jquery function

function AddAlbumToMyProfile(AlbumId, AlbumName, AlbumTypeName) {
    var obj = {
    AlbumId: AlbumId,
    AlbumName: AlbumName,
    AlbumTypeName: AlbumTypeName
    };
    //following is ASP.NET AJAX serialize function to convert
    //object into jSON.
    var json = Sys.Serialization.JavaScriptSerializer.serialize(obj);

    $.ajax({
        type: "POST",
        url: "Gallary.aspx/AddAlbumToMyProfile",
        data: json,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        async: true,
        cache: false,
        success: function(msg) {
            if (msg.d == '') {
                alert("Album Added to your profile");
            }
            else {
                alert(msg.d);
            }

        },
        error: function(XMLHttpRequest, textStatus, errorThrown) {
        }
    });
}

and this is my webmethod

[WebMethod] public static string DeleteRecord(Int64 RecordId, Int64 UserId, Int64 UserProfileId, string ItemType, string FileName) { try { string FilePath = HttpContext.Current.Server.MapPath(FileName);

            XDocument xmldoc = XDocument.Load(FilePath);
            XElement Xelm = xmldoc.Element("UserProfile");
            XElement parentElement = Xelm.XPathSelectElement(ItemType + "/Fields");

            (from BO in parentElement.Descendants("Record")
             where BO.Element("Id").Attribute("value").Value == RecordId.ToString()
             select BO).Remove();

            XDocument xdoc = XDocument.Parse(Xelm.ToString(), LoadOptions.PreserveWhitespace);
            xdoc.Save(FilePath);

            UserInfoHandler obj = new UserInfoHandler();
            return obj.GetHTML(UserId, UserProfileId, FileName, ItemType, RecordId, Xelm).ToString();
        }
        catch (Exception ex)
        {
            HandleException.LogError(ex, "EditUserProfile.aspx", "DeleteRecord");
        }
        return "success";
    }

can anybody please tell me whats wrong in my code??

i am getting error:

{"Message":"Invalid JSON primitive: RecordId.","StackTrace":" at System.Web.Script.Serialization.JavaScriptObjectDeserializer.DeserializePrimitiveObject()\r\n at System.Web.Script.Serialization.JavaScriptObjectDeserializer.DeserializeInternal(Int32 depth)\r\n at System.Web.Script.Serialization.JavaScriptObjectDeserializer.BasicDeserialize(String input, Int32 depthLimit, JavaScriptSerializer serializer)\r\n
at System.Web.Script.Serialization.JavaScriptSerializer.Deserialize(JavaScriptSerializer serializer, String input, Type type, Int32 depthLimit)\r\n at System.Web.Script.Serialization.JavaScriptSerializer.Deserialize[T](String input)\r\n at System.Web.Script.Services.RestHandler.GetRawParamsFromPostRequest(HttpContext context, JavaScriptSerializer serializer)\r\n at System.Web.Script.Services.RestHandler.GetRawParams(WebServiceMethodData methodData, HttpContext context)\r\n
at System.Web.Script.Services.RestHandler.ExecuteWebServiceCall(HttpContext context, WebServiceMethodData methodData)","ExceptionType":"System.ArgumentException"}

© Stack Overflow or respective owner

Related posts about jQuery