2010-01-23 3 views
4

В прошлом я бы просто создал текстовый файл с парами значений ключа, например WIDTH = 40, и вручную проанализировал файл. Это становится немного громоздким, есть стандартный способ сделать это, желательно со встроенной поддержкой из Visual Studio или .NET framework.Существует ли стандартный способ создания файла конфигурации для программы C#?

ответ

6

Файлы конфигурации являются одним из встроенных шаблонов. Щелкните правой кнопкой мыши на своем проекте, выберите «Добавить» - «Создать». В поле шаблона выберите файл конфигурации.

+2

Вы имеете в виду шаблон * Settings File *, верно? Ручное редактирование файлов конфигурации XML - это старая школа. :-P – Aaronaught

4

Вы можете создать файл конфигурации приложения в Visual Studio. Это в основном и XML-файл, который можно использовать для сохранения данных конфигурации приложения, но он не предназначен для чтения в виде XML-файла: .net framework предоставляет некоторые классы для взаимодействия с ним.

Эта ссылка может предоставить некоторые справочные и примеры кода: Using Application Configuration Files in .NET

Вы могли бы поместить этот код в ваш .config файл:

<configuration> 
    <appSettings> 
     <add key="SomeData" value="Hello World!" /> 
    </appSettings> 
</configuration> 

И вы можете прочитать его таким образом в C# (требуется ссылка для сборки System.Configuration):

Console.WriteLine(
    "Your config data: {0}", 
    ConfigurationManager.AppSettings["SomeData"]); 

Примечания вам нужно, чтобы избежать ваших данных ти вписываться в файл XML; например, символ & стал бы &amp;

+1

И те настройки приложений, хранящиеся в файле конфигурации, можно удобно редактировать с помощью вкладки * Настройка * в разделе * Проект-> Свойства ... * –

+0

+1 Для добавления кода примера. –

1

В вашем проекте C# посмотрите в папке: Свойства и откройте файл Settings.setting. Здесь вы можете указать параметры на уровне пользователя или приложения.

В следующем примере кода показано, как использовать параметры:

public partial class MyControl : UserControl 
{ 
    MyProject.Properties.Settings config_; 

    public MyControl 
    { 
     InitializeComponent(); 
     config_ = new MyProject.Properties.Settings(); 
    } 

    public void SaveToConfig() 
    { 
     // save to configuration file 
     config_.ReportFileName = dataFileName.Text; 
     config_.Save(); 
    } 

    public void LoadFromConfig() 
    { 
     string dataFileName = config_.ReportFileName; 
    } 
} 

Вы также можете использовать параметры при запуске приложения, а также для изменения настроек, как обновить ваше приложение.

static void Main() 
    { 
    // if user setting program version user setting is less than 
    MyProject.Properties.Settings config = new MyProject.Properties.Settings(); 
    string version = Assembly.GetExecutingAssembly().GetName().Version.ToString(); 
    if (config.Version != version) 
    { 
     // migrate from version 1.0.2 to future versions here... 
     if (config.Version == null) 
     { 
     } 

     config.Upgrade(); 
     config.Reload(); 
     config.Version = version; 
     config.Save(); 
    } 
Смежные вопросы