我遇到了将string
参数从控制器传递到我所拥有的控制器中的问题:
namespace Map02.Controllers
{
public class AppController : Controller
{
public ActionResult Index(string name)
{
string str = name;
return View(str);
}
}
}
并且我认为:
@model string
@{
ViewBag.Title = "";
}
<h2>AppContent</h2>
<p>@str</p>
但是我收到了这个错误:
答案 0 :(得分:4)
要将字符串作为模型传递给视图,您可以执行以下操作:
public ActionResult Index()
{
string str = name;;
return View((object)str);
}
您必须将其强制转换为对象,以便MVC不会尝试将字符串作为视图名称加载,而是将其作为模型传递。你也可以写:
return View("Index", str);
然后在您的视图中,只需将其键入字符串:
@model string
@{
ViewBag.Title = "";
}
<h2>AppContent</h2>
<p>@Model</p>