访问MVC 3中的资源文件

Viv*_*vek 6 javascript resources asp.net-mvc-3

我想从java脚本和.cshtml视图中的资源文件中访问键/值对.对于我的cshtml上的一些静态内容,我不想在我的模型中创建属性,所以如果我可以直接访问资源文件会很好.

Bru*_*oLM 15

您可以创建一个resx文件并将其属性设置为public,如此处所述.

然后cshtml你可以使用:

@Resources.ResNameHere.Property
Run Code Online (Sandbox Code Playgroud)

要在javascript上使用,只需在script块上呈现它

<script>
    var stringFromResource = "@Resources.ResNameHere.Property";
</script>
Run Code Online (Sandbox Code Playgroud)

您还可以Html在任何地方实现扩展方法并从中读取资源,如果需要,甚至可以从数据库中读取.

public static MvcHtmlString Resource<T>(this HtmlHelper<T> html, string key)
{
    var resourceManager = new ResourceManager(typeof(Website.Resources.ResNameHere));

    var val = resourceManager.GetString(key);

    // if value is not found return the key itself
    return MvcHtmlString.Create(String.IsNullOrEmpty(val) ? key : val);
}
Run Code Online (Sandbox Code Playgroud)

然后你可以打电话给

@Html.Resource("Key")
Run Code Online (Sandbox Code Playgroud)


mar*_*ind 0

您应该能够通过生成的代理类从 Razor 视图访问资源。这不适合你吗?