Správa nastavení aplikace (.NET)
Nastavení aplikace umožňuje dynamicky ukládat informace o aplikaci. Pomocí nastavení aplikace můžete pomocí klientského počítače ukládat informace, které by neměly být zahrnuty do kódu aplikace za běhu. Nastavení aplikace může zahrnovat připojovací řetězce, uživatelské předvolby a další.
Poznámka
Nastavení aplikace nahrazuje dynamické vlastnosti použité v dřívějších verzích sady Visual Studio.
Každé nastavení aplikace musí mít jedinečný název. Název může být libovolná kombinace písmen, číslic nebo podtržítka. Název nemůže začínat číslem a nemůže obsahovat mezery. Název se změní prostřednictvím vlastnosti Name
.
Nastavení aplikace lze uložit jako jakýkoli datový typ, který je serializován do XML nebo má TypeConverter
, který implementuje ToString
/FromString
. Nejběžnějšími typy jsou String
, Integer
a Boolean
. Hodnoty můžete uložit také jako Color, Objectnebo jako připojovací řetězec.
Nastavení aplikace také obsahuje hodnotu. Hodnota je nastavena pomocí vlastnosti Hodnota a musí odpovídat datovému typu nastavení.
Kromě toho může být nastavení aplikace vázáno na vlastnost formuláře nebo ovládacího prvku v době návrhu.
Na základě rozsahu existují dva typy nastavení aplikace:
Nastavení definovaná aplikací lze použít pro údaje, jako jsou adresa URL webové služby nebo připojovací řetězec databáze. Tyto hodnoty jsou přidružené k aplikaci. Uživatelé je proto nemůžou za běhu měnit.
nastavení s oborem uživatele lze použít pro informace, jako je zachování poslední pozice formuláře nebo předvolby písma. Uživatelé můžou tyto hodnoty za běhu změnit.
Typ nastavení můžete změnit pomocí vlastnosti Scope.
Systém projektu ukládá nastavení aplikace do dvou souborů XML:
Soubor app.config, který se vytvoří v době návrhu při vytváření prvního nastavení aplikace
Soubor user.config, který se vytvoří za běhu, když uživatel, který spouští aplikaci, změní hodnotu libovolného nastavení uživatele.
Změny v uživatelských nastaveních nejsou zapsány na disk, pokud aplikace výslovně volá metodu.
Vytvoření nastavení aplikace v době návrhu
V době návrhu můžete vytvořit nastavení aplikace dvěma způsoby:
Použijte stránku Nastavení návrháře projektu .
Použijte okno Vlastnosti formuláře nebo ovládacího prvku, které umožňuje vytvořit vazbu nastavení na vlastnost.
Když vytvoříte nastavení s oborem aplikace (například připojovací řetězec databáze nebo odkaz na prostředky serveru), Sada Visual Studio ho uloží do souboru app.config se značkou <applicationSettings>
. Připojovací řetězce se ukládají pod značku <connectionStrings>
.
Když vytvoříte nastavení s oborem uživatele (například výchozí písmo, domovská stránka nebo velikost okna), Sada Visual Studio ho uloží do souboru app.config se značkou <userSettings>
.
Důležitý
Při ukládání připojovacích řetězců v app.configbyste měli podniknout opatření, abyste v připojovacím řetězci zabránili odhalení citlivých informací, jako jsou hesla nebo cesty k serveru.
Pokud vezmete informace o připojovacím řetězci z externího zdroje, jako je například uživatel, který zadá své ID uživatele a heslo, ujistěte se, že hodnoty, které používáte k vytvoření připojovacího řetězce, neobsahují další parametry připojovacího řetězce, které mění chování připojení.
Zvažte použití funkce Chráněná konfigurace k šifrování citlivých informací v konfiguračním souboru. Další informace naleznete v tématu Ochrana informací o připojení.
Poznámka
Vzhledem k tomu, že pro knihovny tříd neexistuje model konfiguračního souboru, nastavení aplikace se nevztahuje na projekty knihovny tříd. Výjimkou je Visual Studio Tools for Office Runtime dll projektu, který může mít konfigurační soubor.
Použití přizpůsobených souborů nastavení
Do projektu můžete přidat přizpůsobené soubory nastavení pro pohodlnou správu skupin nastavení. Nastavení obsažená v jednom souboru se načtou a uloží jako jednotka. Ukládání nastavení do samostatných souborů pro často používané a zřídka používané skupiny může ušetřit čas při načítání a ukládání nastavení.
Do projektu můžete například přidat soubor SpecialSettings.settings. I když vaše třída SpecialSettings
není vystavena v oboru názvů My
, Zobrazit kód může číst soubor vlastních nastavení, který obsahuje Partial Class SpecialSettings
.
Návrhář nastavení nejprve vyhledá soubor Settings.settings, který systém projektu vytvoří. Tento soubor Settings.settings je výchozí soubor, který Návrhář projektu zobrazí na kartě Nastavení. Soubor Settings.settings se nachází ve složce Můj projekt pro projekty jazyka Visual Basic a ve složce Vlastnosti pro projekty Visual C#. Návrhář projektu pak vyhledá další soubory nastavení v kořenové složce projektu. Proto byste měli soubor vlastního nastavení umístit tam. Pokud do vašeho projektu přidáte soubor .settings na jiném místě, návrhář projektu ho nemůže najít.
Přístup nebo změna nastavení aplikace za běhu v jazyce Visual Basic
V projektech jazyka Visual Basic můžete přistupovat k nastavení aplikace za běhu pomocí objektu My.Settings
. Na stránce Nastavení vyberte tlačítko Zobrazit kód a zobrazte soubor Settings.vb.
Settings.vb definuje třídu Settings
, která umožňuje zpracovávat tyto události ve třídě nastavení:
Třída Settings
v Settings.vb je částečná třída, která zobrazuje pouze kód vlastněný uživatelem, nikoli celou vygenerovanou třídu. Další informace o přístupu k nastavení aplikace pomocí objektu My.Settings
naleznete v tématu Přístup k nastavení aplikace (.NET Framework).
Hodnoty všech uživatelských nastavení, která uživatel mění za běhu, například umístění formuláře, jsou uloženy v souboru user.config. Výchozí hodnoty jsou stále uloženy v app.config.
Pokud se během běhu změní nějaká uživatelsky vymezená nastavení, například při testování aplikace, a chcete tato nastavení obnovit na výchozí hodnoty, vyberte tlačítko Synchronizovat.
Pro přístup k nastavení doporučujeme použít objekt My.Settings
a výchozí .settings soubor. Pomocí návrháře nastavení můžete přiřadit vlastnosti k nastavení a také se uživatelská nastavení automaticky uloží před vypnutím aplikace. Aplikace jazyka Visual Basic ale má přístup k nastavení přímo. V takovém případě musíte získat přístup ke MySettings
třídě a použít vlastní soubor .settings v kořenovém adresáři projektu. Před ukončením aplikace je nutné uložit uživatelská nastavení, stejně jako u aplikace jazyka C#, jak je popsáno v následující části.
Přístup nebo změna nastavení aplikace za běhu v jazyce C#
V jiných jazycích než Jazyk Visual Basic, jako je C#, musíte k Settings
třídě přistupovat přímo, jak je znázorněno v následujícím příkladu jazyka Visual C#.
Properties.Settings.Default.FirstUserSetting = "abc";
Chcete-li zachovat uživatelská nastavení, musíte explicitně volat metodu Save
této třídy obálky. Obvykle to provádíte v obsluze události Closing
hlavního formuláře. Následující příklad jazyka C# ukazuje volání metody Save
.
Properties.Settings.Default.Save();
Obecné informace o přístupu k nastavení aplikace prostřednictvím třídy Settings
naleznete v tématu Přehled nastavení aplikace (.NET Framework).
Migrace aplikací z rozhraní .NET Framework na .NET
Rozhraní .NET Framework používá soubor app.config k načtení nastavení pro vaši aplikaci, jako jsou připojovací řetězce a konfigurace poskytovatele logů. Moderní .NET používá soubor appsettings.json pro nastavení aplikace. Další informace o převodu souborů app.config na appsettings.jsonnajdete v tématu Modernizace po upgradu na .NET z rozhraní .NET Framework.