런타임에 응용 프로그램 설정에 키 값 쌍을 저장하는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/179063

  •  05-07-2019
  •  | 
  •  

문제

런타임에 애플리케이션 설정 API를 사용하여 객체의 동적 키 값 쌍을 어떻게 저장할 수 있습니까?

나는 머리를 돌리려고 노력했으며 의미있는 예 또는 문서를 찾을 수 없습니다.

.NET 사전 클래스는 XML에서 직렬화 할 수 없어서 app.config에 저장할 수없는 것 같습니다.

사용자 정의 XML 직렬화 클래스를 사용하여 수행하는 유일한 방법입니까, 아니면 다른 방법이 있습니까?

도움이 되었습니까?

해결책 2

더 많은 검색 인터넷 후, 나는 .NET 구성 모델을 Dept에서 설명하는 매우 좋은 (매우 길지만) 기사를 찾았습니다.

.NET 2.0 구성의 미스터리를 풀기

나는 또한 매우 유용한 것을 발견했다.

구성 섹션 디자이너

시각적으로 구성 섹션을 설계하고 XSD 파일을 생성하기위한 비주얼 스튜디오. 나는 누군가가 이것을 유용하다는 것을 알기를 바랍니다.

다른 팁

당신은 다음과 같은 일을 할 수 있어야합니다.

// Open App.Config of executable
System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

// Add an Application Setting with a name Key and a Value stored in variable called Value
config.AppSettings.Settings.Add("Key", Value );

// Save the changes in App.config file.
config.Save(ConfigurationSaveMode.Modified);

항상 런타임 동안 app.config를 변경하는 것이 나쁜 관행으로 간주되었다고 생각했습니다. app.config는 프로그램 설정 및 구성에 사용해야합니다. 응용 프로그램이 실제로 수정되는 역동적 인 것들을위한 것이 아닙니다.

동적 객체에 대해 SEPERATE "keyValue.xml"파일을 작성하도록 제안합니다.

정확히 필요한 사항에 따라 System.Collections.ObjectModel.KeyEdCollection을 시도 할 수 있습니다.u003CTKey, TValue> . 이것은 항목 자체에서 항목의 키를 도출 할 수있는 경우에만 작동하지만이 경우이 목적으로는 괜찮습니다.

일반 사전입니까? 그렇다면:

XML 직렬화 가능한 제네릭 사전

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top