【发布时间】:2014-04-06 19:42:29
【问题描述】:
作为一个初学者,我正在做一个非常简单的示例来理解基本的 Razor 概念,当我在控制器类中使用 ViewBag 设置一些值并尝试让它们在视图中显示时,它们不会被打印出来,它既不显示对此也没有任何错误, 请帮帮我。这就是我正在做的事情
模式类:产品
public class Product
{
public int ProductId { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public Decimal Price { get; set; }
public string Catagoery { get; set; }
}
HomeController(仅粘贴不适合我的特定方法)
public ActionResult MyProduct()
{
ViewBag.ProductCount = 1;
ViewBag.ProductQuality = "Good";
return View(product);
}
产品视图
@model RazorApplication.Models.Product
@{
ViewBag.Title = "Demo";
Layout = "~/Views/_BasicLayout.cshtml";
}
<table>
<tr>
<td>Name</td><td>@Model.Name</td>
</tr>
<tr>
<td>Quality</td><td>@ViewBag.ProductCount</td>
</tr>
<tr>
<td>Quality</td><td>@ViewBag.ProductQuality</td>
</tr>
</table>
【问题讨论】:
-
代码看起来不错,应该打印产品计数
-
如果我尝试查看这些值时它不应该显示 IntelliSense 吗?
-
它不会在 ViewBag 的情况下显示智能感知,它的值是在运行时确定的,它是一个动态属性
-
您发布的视图是从 MyProduct 操作返回的
-
是的,对于该操作,我已经注册了视图产品,并且正确显示了产品名称但不显示 Viewbag 内容,这是强类型视图,我在创建时对其进行了重命名,它有什么问题吗?
标签: asp.net-mvc asp.net-mvc-4 c#-4.0 razor