Ale*_*lex 14 asp.net-mvc if-statement view tempdata
我从一个填充我的TempData FormCollection然后我尝试TempData用MVC 4 检查我的视图中的值,但我的if声明没有按照我的预期工作.这是我的代码.
控制器:
[HttpPost]
public ActionResult TestForm(FormCollection data)
{
TempData["username"] = data["var"].ToString(); //data["var"] == "abcd"
return RedirectToAction("Index");
}
Run Code Online (Sandbox Code Playgroud)
视图:
@if (TempData["var"] == "abcd")
{
<span>Check</span> //Never displayed
}
else
{
@TempData["var"]; // Display "abcd"
}
Run Code Online (Sandbox Code Playgroud)
这看起来很简单,我不明白为什么我不能显示这个Check.你能帮助我吗 ?
Elv*_*dov 21
请试试这个
var tempval = TempData["var"];
Run Code Online (Sandbox Code Playgroud)
然后写下你的if语句如下
@if (tempval.ToString() == "abcd")
{
<span>Check</span> //Never displayed
}
else
{
<span>@tempval</span>; // Display "abcd"
}
Run Code Online (Sandbox Code Playgroud)
尝试改变 TempData.Add("var", "abcd");
至
TempData['var'] = "abcd";
Run Code Online (Sandbox Code Playgroud)
更新:
在我的控制器中:
public ActionResult Index()
{
TempData["var"] = "abcd";
return View();
}
Run Code Online (Sandbox Code Playgroud)
在我看来:
// I cast to string to make sure it's checking for the correct TempData (string)
@if ((string)TempData["var"] == "abcd")
{
<span>Check</span>
}
else
{
@TempData["var"].ToString()
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
61426 次 |
| 最近记录: |