global-variables – MVC 3 Razor _ViewStart中的公共变量

我正在使用MVC 3附带的新Razor引擎构建一个站点(并且喜欢新的语法!).但是,我对使用公共属性/常量感到茫然.我知道使用WebForms我们可以在代码后面添加一个公共属性
public string ImageFolder { get; set; }

我想在我的视图可以访问的一个全局位置定义重要变量,从CSS文件和图像的路径开始:

@{
    Layout = "~/Views/Shared/_Layout.cshtml";
    var ContentFolder = "~/Content";
    var CssFolder = ContentFolder + "/Stylesheets";
    var ImageFolder = ContentFolder + "/Images";
}

我已经尝试将上面的代码块放在_Layout中,以及_ViewStart中.但是,从子视图访问它们失败了.我想过在上面的代码块中定义一个公共属性但是它没有编译.

解决方案?

>就我所见,没有人使用Razor背后的代码.
>我想我应该能够从认视图继承并在那里定义我的属性(如described on Stack).

但我强烈希望应该有一个更简单的方法来做这么简单的事情?

解决方法

您可以创建一个文件夹“App_Code”并创建一个文件“GlobalVal.cshtml”.
bellow是文件中的示例代码
@functions{
    public static readonly string __siteHome = "http://www.example.com";
    public static readonly string __siteResource = "http://resource.example.com";
}

和波纹管是一个使用它的样本:

<a href="@GlobalVal.__siteHome/home/index">@GlobalVal.__siteHome</a>

相关文章

这篇文章主要讲解了“WPF如何实现带筛选功能的DataGrid”,文...
本篇内容介绍了“基于WPF如何实现3D画廊动画效果”的有关知识...
Some samples are below for ASP.Net web form controls:(fr...
问题描述: 对于未定义为 System.String 的列,唯一有效的值...
最近用到了CalendarExtender,结果不知道为什么发生了错位,...
ASP.NET 2.0 page lifecyle ASP.NET 2.0 event sequence cha...