二维数组angularjs到c#
我可以从角度控制器调用c#方法,如下所示: 安圭拉:二维数组angularjs到c#,c#,angularjs,multidimensional-array,C#,Angularjs,Multidimensional Array,我可以从角度控制器调用c#方法,如下所示: 安圭拉: $http.post('myC#Function', { "input": input ) .success(function (response) { console.log("success send response: " + response); }) .error(function (response) { console("
$http.post('myC#Function', { "input": input )
.success(function (response) {
console.log("success send response: " + response);
})
.error(function (response) {
console("error send response: " + response);
});
C#
当我试图将2D数组从角度控制器传递到c#控制器时,我的问题就出现了:
angularjs:
var my2DArray= [[], []];
// array is populated here (not shown)
$http.post('myC#Function', { "inputArray": my2DArray)
.success(function (response) {
console.log("success send response: " + response);
})
.error(function (response) {
console("error send response: " + response);
});
c#
任何帮助都将受到感谢 使用Newtonsoft Json库(必须已经在您的项目中)
public string YourCSharpFunction(string yourJson2DArrayFromAngular)
{
var your2darayincharp=JsonConvert.DeserializeObject(yourjson2daraypromangular);
返回“成功”;
}
使用JSON.stringify发送数据
$http.post('myC#Function', { JSON.stringify({ input : input }) })
和C#函数签名作为
public string myC#Function(string[][] input) {}
您应该将contentType:“application/json;charset=UTF-8”
添加到post头中
当我尝试从c#返回输入[0][0]时,即使已填充,也会收到NullReferenceException错误。有什么想法吗?你从哪里得到这个例外?我是说那行代码和另一个答案的错误是一样的。当我尝试从c#返回输入[0][0]时,收到一个NullReferenceException错误,即使它已填充。你知道吗?在调试模式下你的2darrayincsharp里有什么?对吗?
public string YourCSharpFunction(string yourJson2DArrayFromAngular)
{
var your2DArrayInCSharp = JsonConvert.DeserializeObject<string[,]>(yourJson2DArrayFromAngular);
return "success";
}
$http.post('myC#Function', { JSON.stringify({ input : input }) })
public string myC#Function(string[][] input) {}