加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

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

发布时间:2020-12-15 20:52:56 所属栏目:asp.Net 来源:网络整理
导读:我正在使用MVC 3附带的新Razor引擎构建一个站点(并且喜欢新的语法!).但是,我对使用公共属性/常量感到茫然.我知道使用WebForms我们可以在代码后面添加一个公共属性: public string ImageFolder { get; set; } 我想在我的视图可以访问的一个全局位置定义重要
我正在使用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>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读