gpt4 book ai didi

javascript - C# WebMethod - 发送和接收相同的自定义对象作为参数

转载 作者:行者123 更新时间:2023-12-02 16:05:40 27 4
gpt4 key购买 nike

我的代码:

对象:

public class Person
{

private string _Nome;
private DateTime _Nascimento;

public string Nome { get { return _Nome; } }
public DateTime Nascimento { get { return _Nascimento; } }

public Person(string Nome, DateTime Nascimento)
{
_Nome = Nome;
_Nascimento = Nascimento;
}

}

页面(WebMethods):

[WebMethod]
public static Person SendPerson()
{
return new Person("Jhon Snow", DateTime.Now);
}

[WebMethod]
public static string ReceivePerson(Person oPerson)
{
return "OK!";
}

JavaScript:

var Person;
GetPerson();
SendPersonBack();
function GetPerson()
{
$.ajax({
type: "POST",
url: "frmVenda.aspx/SendPerson",
data: {},
contentType: "application/json; charset=utf-8",
success: function (RequestReturn) {
Person = RequestReturn.d;
console.log(Person);
},
error: function (error) {
alert(error.statusText);
}
});
}
function SendPersonBack()
{
$.ajax({
type: "POST",
url: "frmVenda.aspx/ReceivePerson",
data: JSON.stringify({"oPerson": Person}),
contentType: "application/json; charset=utf-8",
success: function (RequestReturn) {
alert(RequestReturn.d);
},
error: function (error) {
alert(error.statusText);
}
});
}

我正常将对象发送到客户端,但无法将其接收回服务器。如果对象相同且属性相同,为什么无法接收回来。问题出在哪里?

最佳答案

查看您提供的链接就可以注意到问题。

您的代码:数据:JSON.stringify({"oPerson": Person}),

正确代码:data: "{oPerson:"+ JSON.stringify(Person) + "}",

在我看来,您正在向服务器发送格式错误的 Json

此外,请尝试将 dataType: 'json' 添加到您的调用中。

关于javascript - C# WebMethod - 发送和接收相同的自定义对象作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30784957/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com