Van*_*iza 1 c# asp.net-mvc razor asp.net-mvc-4
我正在使用MVC,我有一个字符串列表,我想指向一个新页面.我正在使用Razor,我对MVC很新,似乎无法通过谷歌找到我的问题的答案.
我的清单可能包含以下内容:
"hello"
"goodbye"
"seeya"
Run Code Online (Sandbox Code Playgroud)
我知道如何使用ViewBag将控制器中的字符串插入到html页面,如果我有一组固定的字符串,我会使用以下actionlink:
@Html.ActionLink("viewedName", "ChemicalClass", new { mystring = "hello" })
@Html.ActionLink("viewedName", "ChemicalClass", new { mystring = "goodbye" })
@Html.ActionLink("viewedName", "ChemicalClass", new { mystring = "seeya" })
Run Code Online (Sandbox Code Playgroud)
据我了解,这将生成3个链接,重定向到子页面"ChemicalClass",它将包含3个参数之一,具体取决于被点击的链接.
我的问题是,我怎么能这样做,但动态创建了ActionLinks,因为我不知道要创建多少链接,也不知道字符串的内容.我的目标是在(最好是)列表表单中显示网页上的这些链接,例如:
<ol>
<li>
hello
</li>
<li>
goodbye
</li>
<li>
seeya
</li>
</ol>
Run Code Online (Sandbox Code Playgroud)
列表中的每个元素都是链接而不仅仅是字符串.
创建一个存储链接集合的视图模型
模型
public class ViewModel
{
public IList<string> Links { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
在控制器中填充该模型
调节器
public ActionResult Index()
{
var model = new ViewModel
{
Links = new List<string>
{
"Hello",
"Goodbye",
"Seeya"
}
};
return View(model);
}
Run Code Online (Sandbox Code Playgroud)
最后你的视图 查看
@model MvcApplication1.Models.ViewModel
<ol>
@foreach (var item in Model.Links)
{
<li>
@Html.ActionLink("viewedName", "ChemicalClass", new { mystring = item })
</li>
}
</ol>
Run Code Online (Sandbox Code Playgroud)
您的班级将您的字符串和剃刀循环集合在一起以生成您的链接.
| 归档时间: |
|
| 查看次数: |
3748 次 |
| 最近记录: |