使用ASP.NET MVC 3
,我正在做一个 jQuery ( ver 1.7.1
) AJAX 调用,就像我做了十亿次一样。但是,我注意到了一些奇怪的事情。以下调用工作正常:
// license object
var license = {
City: "New York",
CompanyID: 1,
County: "N/A",
IsActive: true
};
// make the request
var $req = $.post('/License/theLicense', license);
$req.success(function () {
// this works!
});
[HttpPost]
public void Save(License theLicense)
{
// save
}
但是,当我为控制器指定数据参数时,它不会在控制器上注册
// license object
var license = {
City: "New York",
CompanyID: 1,
County: "N/A",
IsActive: true
};
// make the request
// this time the controller parameter is specified
// the object will be blank at the server
var $req = $.post('/License/theLicense', { theLicense: license });
$req.success(function () {
// this does not work
});
该对象在控制器处为空白,如下所示
这很烦人,因为我需要传递另一个数据参数,但由于这个问题我不能。
注意: JSON 与 POCO 相同。
为什么当我指定数据参数时,对象在控制器上显示为空白,但当我不这样做时,它就好了?