我有一个 mvc4 项目的问题。
我尝试将一些文本从视图发送到控制器,然后将其添加到模型中,然后尝试在另一个视图中检索文本。
第一个视图代码如下所示:
@{
Html.BeginForm("Result", "Search", "test");
}
<div>
</div>
控制器代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using TheLibrary.Models;
namespace TheLibrary.Controllers
{
public class SearchController : Controller
{
public ActionResult Result(string text)
{
var searchCriteria = new Search { searchCriteria = text };
ViewBag.Search = searchCriteria;
ViewData["ViewSearch"] = searchCriteria;
TempData["TempSearch"] = searchCriteria;
return View();
}
}
}
我的模型代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace TheLibrary.Models
{
public class Search
{
public string searchCriteria { get; set; }
}
}
第二个视图代码:
@Model TheLibrary.Models.Search
@{
var text = (ViewBag.Search as TheLibrary.Models.Search).searchCriteria;
}
<div>
@text
</div>
我得到的结果是“TheLibrary.Models.Search”而不是预期的“测试”。
我究竟做错了什么?