C# 需要有关强类型视图的帮助吗
我遵循ScottGU教程:一个简单的电子商务店面应用程序 我无法从强类型视图类别中的ViewData获取数据 我真的不知道我做错了什么,因为我在遵循斯科特格大学的教程 我使用的是最新的MVC版本2,ScottGU教程基于最早的版本 这是我的aspx代码:C# 需要有关强类型视图的帮助吗,c#,asp.net-mvc,strong-typing,C#,Asp.net Mvc,Strong Typing,我遵循ScottGU教程:一个简单的电子商务店面应用程序 我无法从强类型视图类别中的ViewData获取数据 我真的不知道我做错了什么,因为我在遵循斯科特格大学的教程 我使用的是最新的MVC版本2,ScottGU教程基于最早的版本 这是我的aspx代码: <%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" CodeBehind="Categories.aspx.cs" Inherits="
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" CodeBehind="Categories.aspx.cs" Inherits="System.Web.Mvc.ViewPage<List<MyStore.Models.Category>>" %>
浏览产品
-
这是我的控制器类:
[ControllerAction]
public ActionResult Categories()
{
List<Category> categories = northwind.GetCategories();
return View("Categories",categories);
}
[ControllerAction]
公共行动结果类别()
{
列表类别=northwind.GetCategories();
返回视图(“类别”,类别);
}
感谢您的帮助。您需要使用ViewData的Model属性,例如ViewData.Model 所以你的代码变成了
<% foreach (var category in ViewData.Model)
{ %>
<li>
<%=Html.ActionLink(category.CategoryName, new string { action = "List", category = category.CategoryName })%>
</li>
<% } %>
ViewData只是一个字典,因为模型包含您在案例列表视图中设置的泛型类型的实例,所以您需要使用ViewData的Model属性,例如ViewData.Model 所以你的代码变成了
<% foreach (var category in ViewData.Model)
{ %>
<li>
<%=Html.ActionLink(category.CategoryName, new string { action = "List", category = category.CategoryName })%>
</li>
<% } %>
ViewData只是一个字典,其中模型包含您在案例列表视图中设置的泛型类型的实例我尝试了ViewData。模型:相同的结果。我无法获取category.CategoryName。它说:不包含“CategoryName”的定义。我尝试了ViewData。模型:相同的结果。我无法获取category.CategoryName。它说:不包含“CategoryName”的定义