2012-04-18 2 views
1

this page에 작성자는 리소스가 특수 애플리케이션 폴더 (App_GlobalResources)에 있어야한다고 썼습니다. 좋아, 나는 그것들을 넣었다. 그러나 내 프로젝트에서 내보기/모델/등의 트리를 반영하는 리소스 폴더 트리를 사용합니다. 폴더. 그래서 내 나뭇 가지의 각 터미널 폴더에서 다른 리소스 파일과 같은 이름 ("문자열"또는 다른 이름)을 가진 파일이 있습니다. 이 계획은 리소스를 유지하기 쉽고 상대 프로젝트 파일에 해당합니다. 이 같은 모든 :ASP.NET MVC SiteMap 공급자가 임의의 리소스를 사용할 수 있습니까?

응용 프로그램 폴더 트리 :

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입니다.

따라서 MvcSiteMapProviderApp_GlobalResources을 제외한 다른 리소스 폴더를 사용할 수 있습니까? 또는 자원을 MvcSiteMapProvider과 제대로 작동하도록 구성하려면 어떻게해야합니까? 그러나 엄청난 양의 리소스로 인한 복잡성을 피하려면 어떻게해야합니까?

+0

이 문제가 해결 되었습니까? –

+0

아니요. 저는 MvcSiteMapProvider와 myvmSiteMapProvider의 두 가지 스킴을 사용하기로 결정했습니다. 내 자원 계획을 재구성하지는 않을 것이고,이 계획은 로컬 파일이있는 모든 파일을 하나의 폴더 (App_GlobalResources)에 넣고 모든 문자열을 하나의 로컬 파일에 저장하는 것보다 편리합니다. – user808128

답변

1

리소스 파일을 App_GlobalResources 폴더 외부에두면 몇 가지 이점이 있습니다. 스콧 앨런은 그것에 대해 훌륭한 기사를 쓴 :

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/

관련 문제