【发布时间】:2013-01-30 22:30:44
【问题描述】:
我使用 ASPX 引擎(不是 Razor)启动了一个 Default MVC 4 项目,一切正常。
我可以使用
<% Model.Name %>
和
<% Model.Rating %>
用于图书评级(而不是 asp.net/mvc 教程网站上的餐厅评论)。但是,我的代码错误
<% ViewBag.Message %>
...所以由于某种原因,当从 BookReview 模型中的“BookReviewer”类继承时,我可以查看模型信息,但不能查看 Viewbag?我错过了什么吗?代码如下。
[控制器] HomeController.cs:
public class HomeController : Controller
{
var model = new BookReview()
{
Name = "Pro jQuery For Noobs",
Rating = 7
};
return View(model);
}
[型号] BookReview.cs
namespace Bookreview.Models
{
public class BookReview
{
public string Name { get; set; }
public int Rating { get; set; }
}
}
[查看] 索引.aspx:
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<BookRevew.Models.BookReviewer>" %>
<asp:Content ID="indexFeatured" ContentPlaceHolderID="FeaturedContent" runat="server">
<h2>
<% ViewBag.Message %>
<% Model.Name %>
<% Model.Rating %>
</h2>
</asp:content>
【问题讨论】:
-
我没有看到你设置
ViewBag.Message的任何地方。我也没有看到你提到的BookReviewer课程。有没有你没有发布的代码? -
我将它设置在另一个 ActionResult 中: public ActionResult About() { ViewBag.Message = "This is a test";返回视图();是否不允许在其他ActionResults之外被引用?
标签: c# asp.net .net asp.net-mvc viewbag