在此页面上,作者写道,资源必须位于特殊的应用程序文件夹(App_GlobalResources
)。好的,我把它们放进去。但是在我的项目中,我使用资源文件夹树,它反映了我的视图/模型/等文件夹的树。因此,在我的树分支的每个终端文件夹中,我都有一个与其他资源文件同名的文件(如"字符串"或任何)。这种方案似乎易于维护资源对应的相对项目文件。都像这样:
应用程序文件夹树:
Views
-Account
--LogOn.cshtml
-Home
--Index.cshtml
资源文件夹树:
Resources
-Views
--Account
---LogOn
----Locals
-----Strings.resx // the same name
--Home
---Index
----Locals
-----Strings.resx // the same name
但是名称中的这种相同性会导致App_GlobalResources
文件夹中的资源冲突错误。即使我为每个资源文件分配不同的命名空间。
如果我出于App_GlobalResources
使用我的方案,则资源都可以正常工作,但MvcSiteMapProvider
.
那么,MvcSiteMapProvider
可以使用除App_GlobalResources
之外的其他资源文件夹吗?或者我如何组织我的资源以使它们与MvcSiteMapProvider
正常工作,但避免大量资源的复杂性。
如果将资源文件放在App_GlobalResources
文件夹之外,则有一些优点。斯科特·艾伦(Scott Allen)为此写了一篇出色的文章:
http://odetocode.com/Blogs/scott/archive/2009/07/16/resource-files-and-asp-net-mvc-projects.aspx
您可以使用 MvcSiteMapProvider
中另一个程序集中的资源,但您必须编写自己的资源提供程序,如下所述:
http://msdn.microsoft.com/en-us/library/aa905797.aspx
www.c-sharpcorner.com/uploadfile/prvn_131971/chapter-i-resources-and-localization/