.NET MVC3中的JSON:500(内部服务器服务器错误)
我正在尝试使用一些JSONfunction,它基本上就像它可以一样简单但由于某种原因我在控制台上遇到500内部服务器错误,应用程序永远不会到达控制器。 我已经尝试过几乎所有东西,但是代码非常简单,我已经放弃了尝试通过反复阅读相同的几行找到错误。
这是我的脚本:
$("#saveAdvisorOption").click(function () { // Create a JSON object: alert("OK"); var OptionsModel = { "AdvisorNewsFeed": $("#advisorCheckBox").val() }; alert($(OptionsModel.AdvisorNewsFeed)); $.post("/Account/ChangeOptionForAdvisor", OptionsModel, function (data) { }); });
这是我的模型:
public class OptionsModel { public string AdvisorNewsFeed { get; set; } public OptionsModel(string AdvisorNewsFeed) { this.AdvisorNewsFeed = AdvisorNewsFeed; } }
}
这是我的控制器:
public class AccountController : Controller { [HttpPost] public ActionResult ChangeOptionForAdvisor( OptionsModel option) { //Return something return Json(option, JsonRequestBehavior.AllowGet); }
我在return语句中有一个断点,但它永远不会运行。
任何帮助是极大的赞赏。
您可能只需OptionsModel
类添加一个空构造函数。 没有空构造函数,MVC无法实例化该类。
@scottm遇到了重大问题。
那说:
你可能需要告诉jQuery你期望得到一个json
对象:
$.post("/Account/ChangeOptionForAdvisor", OptionsModel, function (data) {...});
对此:
$.post("/Account/ChangeOptionForAdvisor", OptionsModel, function (data) { ...}, 'json'); //<======