如何在MVC中的jquery帖子中保存tempdata

时间:2016-10-28 17:49:13

标签: jquery asp.net asp.net-mvc asp.net-core-mvc

我正在使用jquery ajax将一些数据发布到服务器,在TempData中将数据保存在服务器上,然后将用户重定向到不同的操作。

    [HttpPost]
    public async Task<IActionResult> GetDocument(SearchFiltersModel filters)
    {
        var model = await _service.GetDocument(filters);
        TempData["Detail"] = model;
        return Json("document/detail/" + model.DocumentID)
    }

    [HttpGet]
    public IActionResult Detail()
    {
        // getting error at line below. 
        /// ArgumentNullException: Value cannot be null. Parameter name: dictionary

        var model = TempData["Detail"] as DocumentModel;            
        return View(model);
    }

  $('btn').click(function(){

    $.ajax({
        type: 'POST',
        data: filters, 
        url: 'document/getdocument'
    })
       .done(function (response) {
           window.location = response;
       })
  })

但是,当调用Detail操作方法时,TempData [&#34; Detail&#34;]为空。为什么TempData在操作方法中丢失。

(我有正当理由在按钮点击而不是表格帖子上做ajax帖子,但这里不相关)

0 个答案:

没有答案