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

前端之家收集整理的这篇文章主要介绍了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>

猜你在找的asp.Net相关文章