2010-06-13 3 views
21

가능한 중복 : 나는에서 하나가 (사용자 당) 응용 프로그램 설정을 절약 할 방법과 매우 다른 예를 많이 발견했다
What is the best way to store user settings for a .NET application?설정 저장

Winforms 응용 프로그램.

이 작업을 수행하는 올바른 방법은 C#에서는 매우 간단하고 누군가가 나를 밝힐 수 있기를 희망한다고 상상해보십시오.

+1

[.NET 응용 프로그램의 사용자 설정을 저장하는 가장 좋은 방법은 무엇입니까?] (http://stackoverflow.com/questions/26369/what-is-the-best-way-to- 저장소 사용자 설정 -에 대한 - NET 응용 프로그램) (이것은 .NET 태그에서 가장 중복 된 질문 중 하나가되어야합니다 ...) – Aaronaught

+0

또 다른 방법은 설정을 저장하는 것입니다 .Net은 [Config4Net]입니다 (https://github.com/sontx/config4net) .Net의 기본 설정 기능 대신 사용할 수 있습니다. 또한 런타임에 편집 할 구성 UI를 표시 할 수 있으므로 시간을 절약 할 수 있으며 특히 앱의 설정 양식을 만들 때 유용합니다. –

답변

60

어느 시점에서 대답은 맛의 문제로 귀결됩니다. 난 당신이 적어도 이러한 옵션으로 끝날 것이다라고 말하고 싶지만 : 당신이 HKEY_CURRENT_USER 키가 레지스트리에서

  • 가게를. 그 아래의 모든 것은 사용자별로 다릅니다. 이것은 대개 작은 키 - 값 쌍을 저장하려는 경우에 선호됩니다. 이 시스템의 가장 큰 장점은 여러 가지 응용 프로그램에서 설정을 쉽게 찾고 공유 할 수 있다는 것입니다. 이 경로를 따르려면 here에서 시작할 수 있습니다.
  • .NET 응용 프로그램 설정을 사용하면 런타임에 설정에 액세스하는 가장 쉬운 방법을 제공합니다. 다시 말하지만, 키 - 값 쌍의 작은 크기의 데이터를 사용하는 것이 좋습니다. 이 방법의 가장 큰 장점은 단순함과 일부 .NET 클래스를 값으로 사용할 수 있다는 것입니다 (모든 것을 기본 유형으로 변환하지 않아도 됨). 이 경로를 따르려면 here에서 시작할 수 있습니다.
  • 사용자 데이터 폴더에 저장하며 대개 사용자의 프로필 디렉토리 아래에 숨겨져 있습니다. 대용량의 데이터 또는 파일 수를 저장하려는 경우에 적합합니다. 이 방법의 가장 큰 장점은 모든 파일 에서처럼 데이터를 조작 할 수 있다는 것입니다 (단점 일 수도 있음). 이 경로를 따르려면 here부터 시작할 수 있습니다.
+0

".NET 응용 프로그램 설정 사용"링크가 지금 고장났습니다. – Brett

13

.NET에서 제공하는 설정 인프라를 사용할 수 있습니다. 프로젝트의 속성 페이지에서 설정 페이지로 이동하여 설정을 정의하십시오. 각 설정의 범위를 "응용 프로그램"또는 "사용자"로 정의 할 수 있습니다. 코드에서 이러한 설정에 액세스하는 클래스가 자동으로 생성됩니다.

액세스 설정 푸와 바, 사용 : 나는 Application Settings을 사용

// Read settings 
textBoxFoo.Text = Properties.Settings.Default.Foo; 

// Write settings 
Properties.Settings.Default.Bar = checkBoxBar.IsChecked; 

// Save settings 
Properties.Settings.Default.Save(); 
+0

코드에서 직접이 작업을 수행 할 방법이 있습니까? 즉, 프로젝트 속성 페이지에서 먼저 미리 설정해야합니까? – Jimbo

+0

예. 설정은에서 사전 정의되어야합니다.설정 파일 –

+1

응용 프로그램 범위 설정은이 생각을 사용하여 저장되지 않습니다. –

1

. 그것은 꽤 간단하고 당신을 위해 몇 가지 문제를 돌볼 것입니다 (예 : 관리자 액세스없이 앱을 설치할 수있는 폴더에 대한 쓰기 권한이없는 경우 설정에 app.config를 직접 사용하지 않는 경우).

관련 문제