사건의 발단
다국어 지원을 위해서 resx의 naming rule을 참조하여 xxxMail.html > xxxMail.{culture}.html명의 file을 등록해서 사용하려는데,
ManifestResource 목록에서 확인이 되지 않았습니다.
즉, xxxMail.html을 resource로 관리할 수 있지만, xxxMail.ko.html은 resource로 관리할 수 없습니다.
증상의 확인
Assembly를 통해 embedded resource를 참조하는 경우, {namespace}.{resource name}으로 접근합니다.
각각에 대해서 명확하게 구분하지 않으므로, ambiguous 할 수 있어 under bar(_)로 치환하여 확인하였습니다.
그러자 정상적인 resource로 관리되는 것을 확인할 수 있었습니다.
해결
Solution 파일을 수정하는 것으로써 file을 등록할 수 있는 것으로 보입니다. (sln파일을 xml editor로 열어서 LogicalName을 별도로 지정)
그러나, 이는 개발 편의적인 측면에서 N/G입니다.
결과적으로 이를 해결하기 위해서 dot(.) 대신 다른 character를 사용했습니다. (ex, under bar(_))
References
How to: Change the name of embedded .resource http://blogs.msdn.com/b/msbuild/archive/2005/10/06/477858.aspx
'Programming > .Net' 카테고리의 다른 글
[NuGet] ImageResizer (0) | 2014.10.14 |
---|---|
dynamic 형식의 활용 (0) | 2014.09.04 |
#region 사용해야 할까? (0) | 2014.08.04 |
[NuGet] PagedList.Mvc (0) | 2014.07.22 |
LinQ 유사 검색 (0) | 2014.07.22 |