我正在使用 ASP.NET MVC 3。我有一个问题是否可以更新模型,即使它没有被发送到控制器?也许问题已经完成,或者我以错误的方式做事?
我有一个对控制器方法的 ajax 调用。我正在传递一个ID。我希望控制器在数据库中找到一些东西,然后更新模型,将其传递回视图。
我有一个相当大的模型......我找到了一些解决方案,将模型转换为 javascript 对象,并将其发送到控制器。这是唯一/正确的方法吗?
如何在 jQuery $.ajax() 发布请求中向 MVC 控制器方法发送模型
我想也许控制器有模型,我可以在其中更新一些字段?
对控制器的调用:
function getBis(id) {
$.ajax({
type: "GET",
url: '@Url.Action("GetBis")',
data: { "id": id },
dataType: 'json',
cache: false,
success: function (data) {
// Do something here
},
error: function (jqXHR, textStatus, errorThrown) {
alert("Problem!");
}
});
}
控制器代码:
public ActionResult GetBis(string id)
{
BeslutIStortDTO viewModel = new BeslutIStortDTO();
int theId;
if (!Int32.TryParse(id, out theId))
throw new Exception("Wrong id");
viewModel = _blLayer.GetBIS(theId);
// somehow update the model here!
return View("index", viewModel);
}