通过RedirectAction传递模型为null [英] Passing Model through RedirectAction is null

查看:121
本文介绍了通过RedirectAction传递模型为null的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述


  • 在我的主控制器中切换视图,我只是从我的控制器调用另一个Action,但是我传递的模型在传递后为null,并且不是预先为空。

      public ActionResult索引(ViewModelViewImages模型)
    {
    返回RedirectToAction(ViewImages,新{passedModel = model} );
    }


  • 在同一个Controller ..

      public ActionResult ViewImages(ViewModelViewImages passedModel)
    {
    //passedModel.(WhateverMyAttributesAre)= null每次
    }








  • 但是我可以写出我的变量,他们传递很好

      string pro = model.Prospects; 
    string cnt = model.Countys;
    string twn = model.TownShips;
    string rng = model.Ranges;
    string sct = model.Sections;

    return RedirectToAction(ViewImages,new {idpro = pro,idcnt = cnt,idtwn = twn,idrng = rng,idsct = sct});


  • 在回报中,我会在其他动作中收到他们

      public ActionResult ViewImages(string idpro,string idcnt,string idtwn,string idrng,string idsct)
    / pre>



我一直在寻找几个小时,现在只有此问题没有具体的答案



有很好的理由吗? /我做错了什么?

解决方案

你没有传递 ViewModelViewImages ,而是通过 new {passedModel = model}
只是传递模型,你应该没事。

  public ActionResult索引(ViewModelViewImages模型)
{
返回RedirectToAction(ViewImages,model);
}


  • In My main controller to switch views I just call another Action from my controller, but my model I am passing is null after being passed, and is not null beforehand.

    public ActionResult Index(ViewModelViewImages model)
    {
        return RedirectToAction("ViewImages", new { passedModel = model });
    }
    

  • In the same Controller..

    public ActionResult ViewImages(ViewModelViewImages passedModel)
    {
        //passedModel.(WhateverMyAttributesAre) = null every time
    }
    


  • However I can write out my variables and they pass just fine

        string pro = model.Prospects;
        string cnt = model.Countys;
        string twn = model.TownShips;
        string rng = model.Ranges;
        string sct = model.Sections;
    
        return RedirectToAction("ViewImages", new { idpro = pro , idcnt = cnt, idtwn = twn, idrng = rng, idsct = sct});
    

  • In Return I'd receive them in the other Action like so

        public ActionResult ViewImages(string idpro, string idcnt, string idtwn, string idrng, string idsct)
    

I've been looking for couple hours now only came across This Question that doesn't have a specific answer yet either.

There a good reason for this? / What am I doing wrong?

解决方案

you are not passing "ViewModelViewImages" , instead you are passing new { passedModel = model } just pass the model and you should be fine .

public ActionResult Index(ViewModelViewImages model)
{
    return RedirectToAction("ViewImages",   model  );
}

这篇关于通过RedirectAction传递模型为null的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆