C# mvc在视图中显示URL列表

C# mvc在视图中显示URL列表,c#,asp.net-mvc,asp.net-mvc-2,C#,Asp.net Mvc,Asp.net Mvc 2,这里是MVC初学者,非常感谢您的建议/帮助。 我试图实现的是,我在控制器中有一个url及其锚定标记的列表。我想把它们发布到一个新的视图。在新视图中,它们将根据名称显示在排序列表中。 到目前为止,我已经有了名称和锚文本,我计划做的是将它们放在ViewData中,并将其传递到新视图中 这是我在控制器中拥有的: Dictionary<string, string> list = ExtractURL(content); return View(new Web

这里是MVC初学者,非常感谢您的建议/帮助。 我试图实现的是,我在控制器中有一个url及其锚定标记的列表。我想把它们发布到一个新的视图。在新视图中,它们将根据名称显示在排序列表中。 到目前为止,我已经有了名称和锚文本,我计划做的是将它们放在ViewData中,并将其传递到新视图中

这是我在控制器中拥有的:

Dictionary<string, string> list = ExtractURL(content);
                return View(new Website(list, "Addresses"));
Dictionary list=ExtractURL(内容);
返回视图(新网站(列表,“地址”);
字典包含url和来自提取url的锚文本。 并且认为:

   <%=ViewData["Addresses"] %>

在新视图中,我现在应该做什么来用url和锚文本填充排序列表? 感谢您的帮助。
谢谢,Laziale

如果您想将该词典返回到视图中,您最好将其实际分配给您的ViewData:

ViewData["Addresses"] = list;
return View();
这将获取您在ExtractURL(content)方法中填充(大概)的Dictionary对象,并使其可在视图中使用

然后,视图将迭代列表中的每个项目:

<ul>
<% foreach(var Item in ViewData["Addresses"] as Dictionary<string, string>) {
%>
   <li>// Show my Item.Properties here</li>
<% }
%>
</ul>
  • //在此处显示我的项目。属性

如果希望将该词典返回到视图中,则最好将其实际分配给视图数据:

ViewData["Addresses"] = list;
return View();
这将获取您在ExtractURL(content)方法中填充(大概)的Dictionary对象,并使其可在视图中使用

然后,视图将迭代列表中的每个项目:

<ul>
<% foreach(var Item in ViewData["Addresses"] as Dictionary<string, string>) {
%>
   <li>// Show my Item.Properties here</li>
<% }
%>
</ul>
  • //在此处显示我的项目。属性

+1尽管我建议将Dictionary作为一种新的模型类型继承,将其作为视图模型传递,然后使用“DisplayFor”来考虑这一点,但不清楚控制器是否使用了任何类型的存储库或DI内容。如果已经有一个数据类型用于控制器,那么这可能更适合模型。+1尽管我建议作为新的模型类型从Dictionary继承,将其作为视图模型传递,然后使用“DisplayFor”,但是不清楚控制器是否使用了任何类型的存储库或DI。如果控制器已经使用了一种数据类型,那么这可能更适合模型。