2011-11-16 4 views
16

런타임시 web.config에서 가져 오려는 열거 형을 사용하고 있습니다. 필자는 빌드 제공 업체에 대한 정보를 읽기 시작했으나 이는 클래스에서 작동하는 것으로 보입니다. 다른 사람이 나를 가리켜 주거나 적어도 올바른 방향으로 나를 가리킬 수 있습니까?런타임에 web.config에서 enum 값을 가져옵니다.

지금은 web.config에 쉼표로 구분 된 값 목록이 있습니다.이 유형은 안전하지 않으므로 오류가 발생할 수 있습니다.

이 유형의 "동적 enum"을 얻는 또 다른 방법이 있다면, 다른 아이디어에 대해 열려 있습니다.

감사합니다.

+0

확인이 http://social.msdn.microsoft.com/Forums/en/netfxbcl/thread/5a700783-0425-43a4-bdc3-0f85a029d3f9 http://stackoverflow.com/questions/478403/can -i-add-and-remove-of-enumeration-at-java 런타임시 –

+0

@NiranjanKala - 그래서 대안이 있습니까? 난 단지 컴파일 타임에 알 수없는 타입에 대해 타입 안전성을 원한다. 이것은 가능한가? –

+0

코드에 강력한 형식의 열거 형을 선언 했습니까? 아니면 모든 것을 동적으로하고 싶습니까? –

답변

25

당신은 ConfigurationManager를 사용하여 열거 형으로 값을 변환 할 수 있습니다

<configuration> 
    <appSettings> 
    <add key="YourEnum" value="BlueSky" /> 
    </appSettings> 
</configuration> 

string configValue = ConfigurationManager.AppSettings["YourEnum"]; 
YourEnumType value = (YourEnumType)Enum.Parse(typeof(YourEnumType), configValue); 
0

난 당신이 그때 나는 내 자신의 열거 클래스를 디자인 할 것 인 경우에. 그렇게하면 XML로 직렬화하거나 런타임에 빌드 할 수 있습니다. 또한 유형 안전성을 보장합니다.

일반적으로 데이터는 클래스 내의 사전 형식 또는 키/값 쌍 목록에 저장됩니다. 그런 다음 설정 파일에 값 목록을 저장할 수 있습니다 (목록 데이터를 읽는 방법을 살펴보십시오)

아이디어를 얻으려면 here을보십시오.

관련 문제