我想知道如何迭代会话,我在动作方法中为其分配了一个字符串列表。 我希望通过for循环将会话中的每个元素显示为链接。 任何帮助表示赞赏。
这是我的索引方法:
public ActionResult Index()
{
Session["num"] = Posts;
//Posts = new List<string> { "element1", "element2", "element3" };
return View();
}
以下是我的观点:
<h2>Index</h2>
@foreach (@item c in @Session["num"])
{
}
答案 0 :(得分:1)
您需要转换会话变量,因为它是一个对象。
像...一样的东西。
@{
var posts = Session["num"] as List<string>;
if (posts != null) {
foreach (var item in posts) {
...
}
}
}
答案 1 :(得分:1)
您已将此问题标记为asp.net-mvc,为什么不利用该框架?
<强>模型强>
class MyModel
{
public List<string> Posts { get; set; }
}
查看(Index.cshtml)
@model MyModel
<h2>Index</h2>
@foreach(var post in Model.Posts)
{
<span>@post</span>
}
<强>控制器强>
public ActionResult Index()
{
var model = new MyModel();
model.Posts = Posts; //Posts = new List<string> { "element1", "element2", "element3" };
return View(model);
}