2012-07-09 40 views
16

使用ASP.NET MVC Razor,我有一个名为General.resxGeneral.fr.resx的资源文件App_GlobalResources,其名称值配对为“Hello”和“Hello”,“你好“和”Bonjour“。如何在视图中使用asp.net mvc razor访问全局资源

我如何从我的观点引用这些?

这些不工作:

@Html.Resource("General.Hello") 
@Html.Resource("GlobalResources.Hello") 
@Html.Resource("GlobalResources.General.Hello") 
@Html.Resource("GlobalResources, General.Hello") 
+1

如果你的资源文件没有显示在视图中,那么你需要做到这一点https://holyhoehle.wordpress.com/2010/02/20/making-global-resources-public/ – 2017-10-18 16:28:21

回答

34

试试这个,

@Resources.General.Hello 

语法:资源[资源名称] [属性]

+1

我知道这将是东西简单。谢谢! – FiveTools 2012-07-09 17:31:22

+1

@FiveTools我不明白你的评论。如果你们都希望在你的mvc应用程序中使用全球化,这是我可以给你的最好的资源http://adamyan.blogspot.in/2010/02/aspnet-mvc-2-localization-complete.html。 – VJAI 2012-07-09 19:31:38

+5

@Dismissile你不应该茫然*我强烈建议不要这种方法*。你应该包括阻止它的原因,所以它会帮助OP和其他人(通过我真正意识到在MVC应用程序中使用App_GlobalResources/App_LocalResources的问题)。 – VJAI 2012-07-09 19:34:27

0

您需要参考您的命名空间。 :

@GeneralResxNamespace.General.Hello 

您可以通过添加命名空间/Views/Web.config文件 与命名空间的部分做在一个简单的方法添加以下部分:

<add namespace="*YourProjectNamespace*.*ResourcesNamespace*.Resources" /> 

然后你可以在本例中使用的资源没有命名空间,如:

General.Hello 
0

从resoure文件视图访问值

添加这个名称空间

@using System 

然后显示当使用环境现状培养螺纹这样

@ResourceFile.Address (ResouceFile is the name of the ResouceFile) 

此方法的值被使用。

+2

**从复审队列**:我可以请求您在源代码中添加一些上下文。仅有代码的答案很难理解。如果您可以在帖子中添加更多信息,它可以帮助提问者和未来的读者。 – RBT 2018-01-05 06:24:38

+0

这并没有真正回答这个问题。如果您有不同的问题,可以通过单击[提问](https://stackoverflow.com/questions/ask)来提问。您也可以[添加赏金](https://stackoverflow.com/help/privileges/set-bounties)来更多地关注这个问题。 - [来自评论](/ review/low-quality-posts/18430486) – Akshay 2018-01-05 09:45:40

相关问题