我的问题如下。 我尝试通过 ajax 解析一些数据,将数据传递到我的 Controller :
AJAX
$.ajax({
type: "GET",
url: "ParseOrganizaitonPath",
data: {
organizationPath: $('#organizationPath').val()
},
success:
function (data) {
//data is from type string with value "System.string[]"
//but should be from type System.string[]
});
}
});
Controller
public string[] ParseOrganizaitonPath(string organizationPath)
{
List<string> organizations = organizationPath.Split('/').ToList();
return organizations.ToArray();
}
我正在到达 Controller 方法,其中一切都很好,但是返回的数据(ajax 部分,成功方法)只是一个字符串(“System.string[]”,data[0] S,data [1]y data[2]s...) 但不是我想要的数据。 (例如,如果我通过输入“test/one”,我希望得到结果 data[0] test, data[1] one)
希望您明白我的问题是什么。
提前致谢!
朱利安
最佳答案
是否尝试过使用 JavaScriptSerializer?看看这个例子:
public string ParseOrganizaitonPath(string organizationPath)
{
List<string> organizations = organizationPath.Split('/').ToList();
System.Web.Script.Serialization.JavaScriptSerializer oSerializer =
new System.Web.Script.Serialization.JavaScriptSerializer();
return oSerializer.Serialize(organizations);
}
要使用 JavaScript 反序列化 JSON 字符串,您可以使用解析函数:
var array = JSON.parse(data);
关于javascript - string[] 通过 Ajax 和 ASP.Net (MVC),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7889684/