asp.net-mvc-3 - 在 Controller 上声明 ViewBag

标签 asp.net-mvc-3 controller viewbag

我在 Controller 的方法中多次使用具有相同消息的 ViewBag.Message 。 是否可以在类的顶部声明 ViewBag.Message,这样就可以在整个 Controller 中使用而无需重复代码?

最佳答案

假设您可以使用 Razor 语法来实现此目的。

@{string pageMessage = ViewBag.Message.ToString();}

那么pageMes​​sage就是页面可用的局部变量,例如:

<h1>@pageMessage</h1>

编辑

ViewBag 是一个动态对象,它是 Controller 基类的成员,因此只需在整个 Controller 中指定一次,您可以在 Controller 构造函数中放置一些内容。

public class MyController : Controller
{
        public MyController()
        {
            ViewBag.ViewTime = DateTime.Now.ToString();
        }

        // rest of controller code
}

关于asp.net-mvc-3 - 在 Controller 上声明 ViewBag,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9930797/

相关文章:

css - 管理模块 css 在 prestashop 1.6 中不起作用

c# - ViewBag 是否有 OrderBy 选项

asp.net-mvc - 尽管没有 [Required] 属性,MVC3 仍然出现 'property field is required' 错误

c# - ASP.NET MVC : Custom Validation by DataAnnotation

asp.net-mvc - 在设置 TempData ["myvalue"] = "foo"之前调用 MVC 3 Session.Abandon() 导致下一个 Controller 将 TempData 设置为 null

asp.net-mvc - 如何使用 ajax get 或 post 在 mvc 中使用参数将数据从 View 传递到 Controller

jquery - 使用 jQuery 更新 ViewBag 并渲染结果

asp.net-mvc-3 - Google 页面内分析在我的 ASP.NET MVC 3 Razor 网站中不起作用

javascript - 如何将属性/方法分配给 AngularJS 服务

c# - 是否可以在没有 PS4 套件的情况下访问 DualShock 4 Controller 中的扬声器?