gpt4 book ai didi

asp.net-mvc - ASP.NET MVC 自动解码来自 AJAX 的 JSON 编码参数

转载 作者:行者123 更新时间:2023-12-04 21:27:51 24 4
gpt4 key购买 nike

当我的 JavaScript 代码使用 AJAX 调用 ASP.NET MVC 方法时,它以 JSON 形式传递值。例如:

var request = new XMLHttpRequest();
request.open("GET", "http://www.awesome.com/DoSomething?param1=%22some%20string%22&param2=1234", true); // parameter string created with JSON.stringify

或者
var request = new XMLHttpRequest();
request.open("POST", "http://www.awesome.com/DoSomething", true);
// set some headers
request.send("param1=%22some%20string%22&param2=1234"); // parameter string created with JSON.stringify

在 ASP.NET MVC 方面,我有我的方法来处理调用:
public void DoSomething(string param1, string param2) {

糟糕的是 param1 被引号包围:
"some string"

更糟糕的是 param2 是字符串:
1234

当我真的想要该值作为整数时。所以,我要做的第一件事就是使用 DataContractJsonSerializer 来解码这两只小狗,这样我的字符串就没有引号,我的第二个字符串被转换为 int。前一两次还不错,但是每次执行 AJAX 操作时都会变老。

理想情况下,拥有如下签名会很棒:
public void DoSomething(string param1, int param2)

我可以直接进入并使用我的值而无需担心 JSON 解码,就像对非 AJAX 操作所做的那样。

有没有办法做到这一点?

最佳答案

哦,发布后我发现代码可以满足我的要求。请参阅底部附近的“ObjectFilter”类:

http://weblogs.asp.net/omarzabir/archive/2008/10/03/create-rest-api-using-asp-net-mvc-that-speaks-both-json-and-plain-xml.aspx

关于asp.net-mvc - ASP.NET MVC 自动解码来自 AJAX 的 JSON 编码参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/568594/

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