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ězec, 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 Name
vlastnosti.
Nastavení aplikace lze uložit jako jakýkoli datový typ, který je serializován do XML nebo má TypeConverter
implementované/ToString
FromString
. Nejběžnějšími typy jsou String
, Integer
a Boolean
. Můžete také uložit hodnoty jako Color, Objectnebo jako připojovací řetězec.
Nastavení aplikace také obsahuje hodnotu. Hodnota je nastavena vlastností Value 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í v oboru aplikace lze použít pro informace, jako je adresa URL webové služby nebo databáze připojovací řetězec. Tyto hodnoty jsou přidružené k aplikaci. Uživatelé je proto nemůžou za běhu měnit.
Nastavení v oboru 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 Obor .
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 databáze připojovací řetězec nebo odkaz na prostředky serveru), Visual Studio ho uloží do souboru app.config se značkou<applicationSettings>
. Připojovací řetězce jsou uloženy pod značkou <connectionStrings>
.
Když vytvoříte nastavení s oborem uživatele (například výchozí písmo, domovská stránka nebo velikost okna), Visual Studio ho uloží do souboru app.config se značkou <userSettings>
.
Důležité
Při ukládání připojovací řetězec v souboru app.config byste měli podniknout preventivní opatření, abyste v připojovací řetězec zabránili odhalení citlivých informací, jako jsou hesla nebo cesty k serveru.
Pokud vezmete připojovací řetězec informace z externího zdroje, jako je uživatel, který zadá své ID uživatele a heslo, ujistěte se, že hodnoty, které používáte k vytvoření připojovací řetězec neobsahují další parametry připojovací řetězec, 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 projekt dll sady Visual Studio Tools for Office Runtime , 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 SpecialSettings
třída není vystavena v My
oboru názvů, view Code může přečíst soubor vlastního 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 projektu přidáte soubor .settings jinde, 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 Settings
třídu, 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 Nastavení aplikace Access (.NET Framework).
Hodnoty všech uživatelských nastavení, která uživatel změ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 souboru 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 My.Settings
objekt a výchozí soubor .settings . 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, například C#, musíte k třídě přistupovat Settings
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 Save
metodu této třídy obálky. Obvykle to uděláte v obslužné rutině Closing
události hlavního formuláře. Následující příklad jazyka Save
C# ukazuje volání metody.
Properties.Settings.Default.Save();
Obecné informace o přístupu k nastavení aplikace prostřednictvím Settings
třídy naleznete v tématu Přehled nastavení aplikace (.NET Framework).
Migrace aplikací z rozhraní .NET Framework na .NET
.NET Framework používá soubor app.config k načtení nastavení pro vaši aplikaci, jako jsou připojovací řetězec a konfigurace zprostředkovatele protokolů. Moderní .NET používá soubor appsettings.json pro nastavení aplikace. Další informace o převodu souborů app.config na appsettings.json najdete v tématu Modernizace po upgradu na .NET z rozhraní .NET Framework.