2014-07-25 5 views
1

전 Universal 응용 프로그램 (Prism 포함) 작업 중입니다. 여기에 내 시나리오가있다. 이 파일은 윈도우 특정 문자열 자원이 - Resources.resw -문자열 리소스 파일 결합

1) 윈도우 :

나는 다음과 같은 프로젝트에 문자열 리소스 파일이 있습니다.

2) WindowsPhone과 - Resources.resw이 -이 파일은 공유 전화 특정 문자열 리소스

3)가 있습니다 - SharedResources.resw -이 파일은 윈도우와 전화 사이의 공통적 인 문자열 리소스가 있습니다.

이제 ResourceLoader가 "SharedResources.resw"및 "Resources.resw"파일에서 두 파일을 모두 검색하도록 만들 수 있습니까?

제안 사항?

미리 감사드립니다.

public class ResourceLoaderEx : IResourceLoaderEx 
{ 
    //This method is used when the PCL contains .resx file instead of .resw. 
    public string GetString(string resource, string baseName, Assembly assembly)   { 
      ResourceManager resourceManager = new ResourceManager(baseName, assembly); 
      return resourceManager.GetString(resource); 
    } 


    public string GetString(string resource) 
    { 
     ResourceLoader resourceLoader; 
     if (resource.Contains("\\")) 
     { 
      resourceLoader = ResourceLoader.GetForCurrentView(resource.Substring(0, resource.LastIndexOf("\\"))); 
      resource = resource.Substring(resource.LastIndexOf("\\") + 1); 
     } 
     else 
     { 
      resourceLoader = ResourceLoader.GetForCurrentView(); 
     } 
     return resourceLoader.GetString(resource); 
    } 
} 

이 클래스 커버 다음과 같은 시나리오 (코드 내 UILoic 클래스 아래 아래) :

var windowsSpecificResource = resourceLoader.GetString(@"windows"); // This will fetch the resource from Resources.resw file 

var sharedResource = resourceLoader.GetString(@"SharedResources\testforshared"); // This will fetch the resource from the SharedResources.resw file 

var pclResource = resourceLoader.GetString("SaveErrorMessage", "Contoso.UILogic.Strings.Resources", typeof(Strings.Resources).GetTypeInfo().Assembly); // This will fetch the resource from Resources.resx file which is in my UILogic project. 

대한 의견

답변

0

나는 다음과 같이위한 ResourceLoader 클래스를 확장 한?