javascript - Angular 和 ASP.NET MVC - 当我将参数传递给后端 Controller 时,参数为空

标签 javascript c# asp.net angularjs asp.net-mvc

如果您查看我的 ASP.NET MVC Controller clientId 参数,它始终为 null。

我可以让它不为空并实际成功传递数据的唯一方法是创建一个类...但这变得很乏味,我无法为我所做的每个后端函数创建一个类这个工作。

有没有一种方法可以在不创建类的情况下成功传递数据?

感谢您的帮助

Angular 工厂

PlaylistsFactory.getUsersForClient = function (clientId) {
return $http({
    method: 'POST',
    url: '/Show/GetUsersForClient',
    data: JSON.stringify(clientId)
  });
};

Angular Controller

PlaylistsFactory.getUsersForClient(clientId)
  .success(function (userList) {
    console.log('success!');
  });

ASP.NET MVC Controller

public JsonResult GetUsersForClient(string clientId)  //clientId is always null unless i create an object
{
  ...
}

最佳答案

尝试使 JSON 参数与 C# 参数的名称匹配,并将其封装在数据负载中作为 JSON:

return $http({
    method: 'POST',
    url: '/Show/GetUsersForClient',
    data: {clientId: JSON.stringify(clientId)}
  });
};

关于javascript - Angular 和 ASP.NET MVC - 当我将参数传递给后端 Controller 时,参数为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32260731/

相关文章:

asp.net - IFrame 和 SEO 问题

javascript - JavaScript slider 中的六边形效果

c# - ThreadLocal<T> 和静态方法?

javascript - 如何在asp.net中获取动态创建的文本框Web控件的值

c# - 如何从 XmlDocument() 上的 URL 加载 XML

c# - DownloadString 在似乎在浏览器中工作的 https url 上给出超时

c# - .NET 或 MSSMTP 在 From header 中添加换行符

javascript - 将带有逗号的字符串转换为带有逗号的数组(甚至只是带有逗号的数字)

javascript - 带有光线转换和相交测试的 Three.js 鼠标事件

c# - 如何在关闭弹出窗口时重新加载父页面?