2011-10-12 2 views
1

Silverlight 3 응용 프로그램을 작성 중이며 응용 프로그램에서 사용할 문자열 텍스트를 저장하는 가장 좋은 방법은 무엇입니까?Silverlight 응용 프로그램에 문자열 리소스를 저장하는 표준 방법

이상적으로 이러한 문자열은 일종의 XML로 또는 내 응용 프로그램에 바이너리 컴파일되지 않은 독립적으로 편집 가능한 형식으로 외부화됩니다.

+0

문자열 리소스를 "외부화"하는 것이 "표준"이 아닙니다. 나는 두 번째 문장이 실제로 첫 번째 문장보다 더 중요하다고 생각합니다. – AnthonyWJones

답변

0

리소스 파일 (.resx)을 사용하여 문자열을 저장합니다.

+0

리소스 파일이 내 .dll로 컴파일되므로이 파일을 런타임에 외부화하고 싶지만이 방법으로는 원하는대로 재구성 할 수 있다고 생각하지 않습니다. 그게 중요한 건 : "그건 내 응용 프로그램에 컴파일 된 이진 파일이 아닙니다" – kaes

0

리소스 파일은 내가 이것을 달성하기 위해 XAML 파일에 ResourceDictionary를 사용하는 경향 거라고

1

같은 문자열을 저장하는 가장 좋은 장소가 될 것입니다.

<ResourceDictionary 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:sys="clr-namespace:System;assembly=mscorlib" 
> 
    <sys:String x:Key="hello">Hello</sys:String> 
    <sys:String x:Key="world">World</sys:String> 
</ResourceDictionary> 

참고 :이 파일에는 x : 클래스가 없습니다. 콘텐츠로 또는 앱 빌드에 리소스로 포함시키지 않을 것입니다. 대신 XAP가 웹 사이트에 저장되는 ClientBin 폴더에이 파일을 포함하면됩니다.

그런 다음이 파일을 다운로드하고 당신에게 당신이 지금 문자열 참조를 해결하는 데 사용할 수있는 ResourceDictionary의 인스턴스를 가져옵니다 XamlReader를 통해 결과 문자열을 쑤셔 넣어 WebClientDownloadStringAsync을 사용합니다. 실제로이 사전을 App.Resources의 병합 된 사전에 추가하면 항목이 정적 리소스로 해결 될 수 있습니다.

+0

ok cool. 이것은 원시 XML 파일을 가지고 원시 XML 파일을 구문 분석하는 것 이상의 이점을 제공합니까? 즉, 바로 여기 내가 옳은 일을하고있는 것입니까? – kaes

+0

@keas : 분명히 자신 만의 XML 파일을 사용하는 것은 꽤나 간단 할 것입니다. 그러나 XML을 사전의 형태로 변환하기 위해서는 독자적인 XML 처리를 작성해야합니다. 그래서 Xaml을 사용하면서 얻은 주된 이점은'XamlReader'가 당신을 위해 모든 것을 수행한다는 것입니다. – AnthonyWJones

관련 문제