Архитектура настроек приложения
http://msdn.microsoft.com/en-us/library/8eyb2ct1.aspx
Хорошо, старый пост, но я вспомнил его, когда столкнулся с подобной ситуацией:
...
Если вы перейдете в Project / Project Properties (в VS2008 или VS2010).Существует вкладка «Настройки».
Если добавить новое значение ....
Один из типов называется: System.Collections.Specialized.StringCollection
Дайте ему имя (я использовал «FavoriteColors»).
Установите тип (как указано выше).
Установите значение (я).
Коллекция «String»Редактор «говорит:« Введите строки в коллекцию (по одной на строку) ».
Я ввел:
Красный
Желтый
Черный
Белый
Это добавит немного xml в ваш файл app.config.
<setting name="FavoriteColors" serializeAs="Xml">
<value>
<ArrayOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<string>red</string>
<string>yellow</string>
<string>black</string>
<string>white</string>
</ArrayOfString>
</value>
</setting>
(Вам будет лучше пройти через шаги, чем вставлять xml выше, потому что(для краткости) Я не добавил все xml к этому сгенерированному сообщению.
Вы должны иметь возможность "получить" значения с помощью кода, подобного следующему:
private void ShowMyFavoriteColors()
{
Properties.Settings.Default.FavoriteColors.Cast<string>().ToList().ForEach(myfavcolor =>
{
string temp = myfavcolor;
});
}
ПримечаниеПриведенные выше действия приведут к получению приведенного ниже кода C # (автоматически созданный код для вас .... это , а не код, который вы создаете), но код выглядит следующим образом:
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute(@"<?xml version=""1.0"" encoding=""utf-16""?>
<ArrayOfString xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"">
<string>red</string>
<string>yellow</string>
<string>black</string>
<string>white</string>
</ArrayOfString>")]
public global::System.Collections.Specialized.StringCollection FavoriteColors {
get {
return ((global::System.Collections.Specialized.StringCollection)(this["FavoriteColors"]));
}
}
}
}