# 개발 환경
운영체제(OS) |
: |
Window 10 Home edition - 64bit |
통합 개발 환경(IDE) |
: |
Visual Studio 2017 |
# 동적으로 리소스를 가지고 오고 싶을 때
ASP.NET MVC5로 개발을 하면서 글로벌 웹을 구현하게 되면 리소스를 자주 사용하게 됩니다.
왜냐하면 각 나라별로 언어가 변동이 되어야 되기 때문입니다.
그런데 이 리소스를 사용하면서 동적으로 리소스가 생성되어야 하는 경우가 존재합니다.
예를 들면 아래와 같은 상황이 존재하는 경우가 있습니다.
@{
for(int i = 0; i < 10; i++){
Resources.String_ + i //String_1, String_2, String_3 이런식으로 사용하고 픔
}
}
위 소스와 같이 저런식으로 리소스를 사용하고 싶은데
저런식으로 사용을 할수가 없습니다.
왜냐하면 리소스를 저런식으로 써버리면 Resources.String_ 이 이름에 대한 리소스를 찾기 떄문입니다.
때문에 리소스 오류가 발생합니다.
이럴때 필요한 함수가 있습니다.
바로 아래의 @Resources.ResourceManager.GetString() 이라는 함수입니다.
@Resources.ResourceManager.GetString(string)
설명
string매개변수에 리소스 이름을 입력해 주면 해당 리소스의 문자열을 반환하는 역활을 하는
이 함수는 매게변수로 String 형식의 문자열을 입력받아,
그 문자열을 리소스 네임으로 인식하여 일치하는 문자열을 반환해 주는 함수 입니다.
즉 아래와 같은 소스 형태가 가능하다는 것 입니다.
@{
for(int i = 0; i < 10; i++){
Resources.ResourceManager.GetString("String_ "+ i) //String_1, String_2, String_3
이런식으로 사용이 가능
}
}
이 함수를 이용하면 레이저를 이용하여 리소스를 동적으로 받아올 수 있습니다.
# 마무리
위 포스트는 제가 직접 제작한 것 입니다.
그렇기 때문에 틀린점이나 설명이 엉성한 점이 존재할 수 있습니다.
만약 틀린점이나 설명이 엉성한 부분이 존재하면 댓글로 알려주세요.
빠른 처리 하도록 하겠습니다.
읽어주셔서 감사합니다.
'잡다한 기술' 카테고리의 다른 글
[티스토리 초대장] 2월 티스토리 초대장 배포 (25) | 2018.03.10 |
---|---|
[K-Move/해외인턴/IT인턴]미국에서 집 구하기 (0) | 2018.03.09 |
[ASP.NET MVC5]레이저 문법(Razor) - 레이저 문법 주석처리 하는 법 (0) | 2018.03.03 |
[K-Move/해외인턴/IT인턴]미국에서 차 구하기 (0) | 2018.03.02 |
[자바스크립트(javascript)/제이쿼리(jquery)]아이디, 이메일, 이름, 패스워드 체크하는 함수 (0) | 2018.03.01 |