다국어로 restapi를 개발할 때 유용 할 수있는 텍스트를 즉시 번역 할 수있는 강력한 도구
dotnet add package OftobTech.AppLocalizator
또는 Visual Studio의 Nuget 도구를 통해
게시 된 프로젝트의 루트에서 Lang 폴더를 만듭니다
이 폴더 내부에서는 번역 파일을 만들 수 있습니다.
en.txt
jp.txt
ar.txt
그런 다음 코드 에서이 도구를 사용할 수 없습니다
using OftobTech . AppLocalizator ;
OftobTech . AppLocalizator . Reader . UpdateLangs ( ) ;
var message = T . Compile ( "[Text to transalete]" ) ;
Console . WriteLine ( message ) ;[sentence for translate] : [translated sentence]
[sentence for translate] : [translated sentence]
[sentence for translate] : [translated sentence]
....번역 된 각 문장은 새 선으로의 전환으로 끝나야하며 번역을위한 텍스트 분리기와 번역 된 텍스트는 결장입니다.
라이브러리는 또한 최소 구성을 지원하므로 프로젝트와 관련된 기본 언어와 폴더의 위치를 변환 파일로 구성 할 수 있습니다.
구성 파일이 생성되지 않은 경우 기본 파일을 가져옵니다.
# The default language will be used if it
# was not passed an additional parameter when using the library
DefaultLang: en
# The address of the language files can be either relative or absolute
LangsFilesPath: Langs 다음 경로 config/lang.conf 사용하여 파일 데이터를 수동으로 만들 수 있습니다.
또는 다음 건설에 전화하십시오.
using OftobTech . AppLocalizator ;
OftobTech . AppLocalizator . Config . PublishConfig ( ) ;기본 구성을 자동으로 생성합니다
프로그램 실행 중에 언어를 변경하려면 setLang(string lang) 메소드를 호출해야합니다.
using OftobTech . AppLocalizator ;
T . setLang ( item . DeviceLanguage ) ;번역 전에 매번 부를 수 있습니다 (마지막 노출 된 언어를 기억한다는 점을 고려할 가치가 있습니다).
using OftobTech . AppLocalizator ;
T . setLang ( item . DeviceLanguage ) . Compile ( "[Text to transalete]" ) ; 번역 파일에 매개 변수로 문자열을 변환하려면 변환 문자열에 매개 변수를 포함시켜야합니다. 이는 Curly Brackets에서 일부 매개 변수 식별자를 래핑하여 수행됩니다.
Hello : Hello {parametr_1} {parametr_2} 이러한 문자열을 컴파일 메소드로 변환하려면 대체 속성은 객체를 Dictionary<string, string> 유형으로 전달합니다. 여기서 키는 매개 변수 식별자 (곱슬 브래킷없이)이며 값을 대체해야합니다.
예
using OftobTech . AppLocalizator ;
var params = new Dictionary < string , string > ( ) {
{ "parametr_1" , "beautiful" } ,
{ "parametr_2" , "world!" } ,
}
T . setLang ( item . DeviceLanguage ) . Compile ( "Hello" , params ) ; 라이브러리는 2 개의 번역 모드 및 타이밍을 지원합니다. 일반 모드에서는 번역 파일에서 적절한 문자열이 발견되지 않으면 통과 된 문자열이 엄격한 모드로 반환됩니다. 변환 문자열을 찾지 못하면 NULL이 반환됩니다.
예
using OftobTech . AppLocalizator ;
T . Compile ( "[Text to transalete]" , true ) ;
/// OR
T . Compile ( "[Text to transalete]" , params , true ) ; 언어 파일을 추가하거나 업데이트 할 필요가 있지만 응용 프로그램을 다시 시작할 수없는 경우가 있습니다. 그러면 updatelangs () 메소드가 도움을받을 수있어 응용 프로그램의 메모리에서 번역을 즉시 업데이트 할 수 있습니다.
using OftobTech . AppLocalizator ;
OftobTech . AppLocalizator . Reader . UpdateLangs ( ) ;