如何在不丢失数据的情况下重定向到同一视图

时间:2018-08-03 10:16:46

标签: c# jquery angularjs asp.net-mvc-4 asp.net-mvc-5

当我第一次加载项目时,我在项目的同一视图上有两个文本框,我们使用model.name在控制器上为文本框提供值,而不是在我的按钮上单击另一个文本框,显示其他值model.age,但在model.name上显示值是删除我想要两个文本框中的值。

namespace WebApplication2.Controllers {
  public class HomeController: Controller {
    // GET: Home

    Class1 cs = new Class1();
    public ActionResult Index() {
      if (TempData["A"] == null) {
        cs.name = "hi";
        TempData["A"] = "B";
      }
      return View(cs);
    }

    public ActionResult A() {
      cs.age = "hello";
      //return RedirectToAction("Index",cs);
      return View("Index", cs);
    }
  }
}

2 个答案:

答案 0 :(得分:0)

namespace WebApplication2.Controllers
{
public class HomeController : Controller
{
    // GET: Home

    Class1 cs = new Class1();
    public ActionResult Index()
    {
        if(TempData["A"]==null)
        {

            cs.name = "hi";
            TempData["A"] = "B";
        }

        return View(cs);
    }

    public ActionResult A(string name)
    {
       cs.age ="hello";
       cs.name = name;
       return View("Index", cs);

    }


    }
}

答案 1 :(得分:-1)

只需将变量/对象设为静态即可保留值。

static Class1 cs = new Class1();