【发布时间】:2021-12-07 17:29:36
【问题描述】:
已在网上学习了许多教程,但仍然得到相同的结果。考虑到我想要的只是将一个变量发送到控制器,微软的文档是如此深入。
我的客户端代码如下所示:
var obj = { send: 'test' };
$.ajax({
url: '/Countries/GetVotes',
type: 'POST',
contentType: "application/json",
data: JSON.stringify(obj),
success: function (data) {
if (data === null) {
// TODO
} else {
console.log(data);
}
},
error: function (error) {
console.log(error);
}
});
那么控制器将如下所示:
[HttpPost]
public async Task<JsonResult> GetVotes(string send)
{
try
{
var votes = ctx.Candidates.Where(x => x.Country == send)
.OrderByDescending(x => x.Votes)
.ToList();
return Json(votes);
}
catch (Exception ex)
{
logger.Error(ex);
}
return Json("foo");
}
所有标准并且曾经在 .NET 框架 4.7.2 中工作,任何做过 MVC 的人都会非常熟悉这种方法。
我已决定尝试使用 .net core 3.1。我遇到了所有正确的断点,我遇到的问题是名为“send”的字符串作为 null 发送到我的控制器。
有人知道最简单的方法吗?
【问题讨论】:
-
你有什么错误吗?
-
嗨,不,在控制器变量中看不到任何只是一个空值
标签: c# json .net asp.net-mvc asp.net-core