2009-12-08 2 views
0

사용자 언어에 따라 현지화해야하는 데이터 레이어 (국가 및 언어)에 2 개의 항목이 있다고 가정 해 보겠습니다.데이터 객체에서 RESX 국제화 사용, 좋지 않습니까?

일반적인 옵션은 번역을 사용하여 DB 테이블을 만들고 사용자 언어로 모든 쿼리에 매개 변수를 추가하는 것입니다. 좋아, 문제는 없지만 여기서 대안을 찾고있다.

번역본을 RESX 파일에 저장하고 내 개체에 속성을 추가하여 번역 된 이름을 얻는 것이 더 좋은 대안이 될 수 있습니까? 이 resx 파일은 어디에 넣어야합니까? 내 데이터 프로젝트에서? separete 프로젝트? 다른 대안?

+0

정말 이해할 수 없습니다. 즉, 국가 이름을 가진 엔티티와 지역화해야하는 언어 이름이있는 엔티티가 있습니까? –

답변

1

텍스트가 상수 일 경우 (응용 프로그램을 사용하는 동안 변경되지 않음) 실제로 resx 파일에 속할 수 있습니다. 장점은 가장 가까운 알려진 언어로 자동으로 폴백된다는 것입니다 (예를 들어, en-uk를 지원하지 않으면 en-us로 돌아가고, 영어 사용자는이 예제에서 나를 싫어할 것입니다 :-)

텍스트가 필요한 가장 높은 레이어에 배치하십시오. 예를 들어 UI에서만 필요한 경우 텍스트를 UI 레이어에 배치합니다. 비즈니스 로직은 키로 쉽게 (또는 더 나은) 생존 할 수 있습니다. 예를 들어 내보내기 기능이나 로그 파일과 같이 비즈니스 계층에서이 기능이 필요한 경우에는 해당 항목을 배치해야합니다.

+0

니스! 가장 좋은 레이어로 이동하는 것이 좋습니다. 예, UI로 모든 항목에서 키로 살 수 있습니다. 나는 그렇게 간단한 것을 너무 많이 생각하고 있었다! – Drevak

0

데이터로드 위치에 따라 다릅니다. 데이터베이스에서로드하는 경우 데이터베이스 테이블을 사용하십시오. 국가 및 언어가 정적 데이터 인 경우 현지화 된 여러 resx 파일이있는 유틸리티 클래스를 선택할 수 있습니다.

관련 문제