Delen via


Toepassingsinstellingen beheren (.NET)

Met toepassingsinstellingen kunt u toepassingsgegevens dynamisch opslaan. Met toepassingsinstellingen kunt u een clientcomputer gebruiken om gegevens op te slaan die tijdens runtime niet moeten worden opgenomen in de toepassingscode. Toepassingsinstellingen kunnen verbindingsreeksen, gebruikersvoorkeuren en meer omvatten.

Notitie

Toepassingsinstellingen vervangen de dynamische eigenschappen die worden gebruikt in eerdere versies van Visual Studio.

Elke toepassingsinstelling moet een unieke naam hebben. De naam kan elke combinatie van letters, cijfers of een onderstrepingsteken zijn. De naam kan niet beginnen met een getal en mag geen spaties bevatten. De naam wordt gewijzigd via de eigenschap Name.

Toepassingsinstellingen kunnen worden opgeslagen als elk gegevenstype dat wordt geserialiseerd naar XML of heeft een TypeConverter die ToString/FromStringimplementeert. De meest voorkomende typen zijn String, Integeren Boolean. U kunt waarden ook opslaan als Color, Objectof als een verbindingsreeks.

Toepassingsinstellingen bevatten ook een waarde. De waarde wordt ingesteld met de eigenschap Waarde en moet overeenkomen met het gegevenstype van de instelling.

Bovendien kunnen toepassingsinstellingen worden gebonden aan een eigenschap van een formulier of besturingselement tijdens het ontwerp.

Er zijn twee typen toepassingsinstellingen op basis van het bereik:

  • applicatiespecifieke instellingen kunnen worden gebruikt voor informatie zoals een URL voor een webservice of een databaseconnectiestring. Deze waarden zijn gekoppeld aan de toepassing. Daarom kunnen gebruikers deze tijdens runtime niet wijzigen.

  • instellingen voor gebruikersbereik kunnen worden gebruikt voor informatie, zoals het behouden van de laatste positie van een formulier of een lettertypevoorkeur. Gebruikers kunnen deze waarden tijdens runtime wijzigen.

U kunt het type van een instelling wijzigen met behulp van de eigenschap Bereik.

In het projectsysteem worden toepassingsinstellingen opgeslagen in twee XML-bestanden:

  • Een app.config-bestand, dat tijdens het ontwerp wordt gemaakt wanneer u de eerste toepassingsinstelling maakt

  • Een user.config-bestand, dat tijdens runtime wordt gemaakt wanneer de gebruiker die de toepassing uitvoert, de waarde van een gebruikersinstelling wijzigt

Wijzigingen in gebruikersinstellingen worden niet naar de schijf geschreven, tenzij de toepassing specifiek een methode aanroept om dit te doen.

Toepassingsinstellingen maken tijdens het ontwerp

U kunt tijdens het ontwerpproces toepassingsinstellingen maken op twee manieren:

  • Gebruik de pagina Instellingen van de Projectontwerper.

  • Gebruik het venster Eigenschappen voor een formulier of besturingselement, waarmee u een instelling aan een eigenschap kunt koppelen.

Wanneer u een instelling voor toepassingsbereik maakt (bijvoorbeeld een databaseverbindingsreeks of een verwijzing naar serverbronnen), slaat Visual Studio deze op in het app.config bestand met de tag <applicationSettings>. Verbindingsreeksen worden opgeslagen onder de tag <connectionStrings>.

Wanneer u een instelling met gebruikersbereik maakt (bijvoorbeeld standaardlettertype, startpagina of venstergrootte), slaat Visual Studio deze op in app.config bestand met de tag <userSettings>.

Belangrijk

Wanneer u verbindingsreeksen opslaat in app.config, moet u voorzorgsmaatregelen nemen om te voorkomen dat gevoelige informatie, zoals wachtwoorden of serverpaden, in de verbindingsreeks wordt weergegeven.

Als u verbindingsreeksgegevens van een externe bron opneemt, zoals een gebruiker die zijn gebruikers-id en wachtwoord levert, moet u ervoor zorgen dat de waarden die u gebruikt om de verbindingsreeks samen te stellen geen aanvullende verbindingsreeksparameters bevatten die het gedrag van uw verbinding wijzigen.

Overweeg het gebruik van de functie Beveiligde configuratie om gevoelige informatie in het configuratiebestand te versleutelen. Zie Verbindingsgegevens beveiligenvoor meer informatie.

Notitie

Omdat er geen configuratiebestandsmodel is voor klassebibliotheken, zijn toepassingsinstellingen niet van toepassing op klassebibliotheekprojecten. De uitzondering is een Visual Studio Tools voor Office Runtime DLL-project, dat een configuratiebestand kan hebben.

Aangepaste instellingenbestanden gebruiken

U kunt aangepaste instellingenbestanden toevoegen aan uw project voor handig beheer van groepen instellingen. Instellingen die zich in één bestand bevinden, worden geladen en opgeslagen als een eenheid. Als u instellingen opslaat in afzonderlijke bestanden voor veelgebruikte en zelden gebruikte groepen, kunt u tijd besparen bij het laden en opslaan van instellingen.

U kunt bijvoorbeeld een SpecialSettings.settings bestand toevoegen aan uw project. Hoewel uw SpecialSettings-klasse niet is blootgesteld in de My-naamruimte, kan View Code het bestand met aangepaste instellingen dat Partial Class SpecialSettingsbevat lezen.

De Settings Designer zoekt eerst naar het bestand Settings.settings dat het projectsysteem maakt. Dit bestand Settings.settings is het standaardbestand dat de Project designer- op het tabblad Instellingen wordt weergegeven. Het bestand Settings.settings bevindt zich in de map Mijn project voor Visual Basic-projecten en in de map Eigenschappen voor Visual C#-projecten. De Projectontwerper zoekt vervolgens naar andere instellingenbestanden in de hoofdmap van het project. Daarom moet u het bestand met aangepaste instellingen daar plaatsen. Als u een .settings bestand ergens anders in uw project toevoegt, kan de Projectontwerper het niet vinden.

Toepassingsinstellingen openen of wijzigen tijdens runtime in Visual Basic

In Visual Basic-projecten hebt u tijdens runtime toegang tot toepassingsinstellingen met behulp van het My.Settings-object. Selecteer op de pagina Instellingen de knop Code weergeven om het Settings.vb bestand weer te geven. Settings.vb definieert de Settings klasse, waarmee u deze gebeurtenissen in de instellingenklasse kunt afhandelen:

De Settings-klasse in Settings.vb is een gedeeltelijke klasse die alleen de code in eigendom van de gebruiker weergeeft, niet de hele gegenereerde klasse. Zie Access-toepassingsinstellingen (.NET Framework)voor meer informatie over het openen van toepassingsinstellingen met behulp van het My.Settings-object.

De waarden van instellingen met gebruikersbereik die de gebruiker tijdens runtime wijzigt, bijvoorbeeld de positie van een formulier, worden opgeslagen in een user.config bestand. De standaardwaarden worden nog steeds opgeslagen in app.config.

Als er tijdens runtime instellingen voor gebruikersbereik worden gewijzigd, bijvoorbeeld bij het testen van de toepassing en u deze instellingen opnieuw wilt instellen op de standaardwaarden, selecteert u de knop Synchroniseren.

U wordt aangeraden het My.Settings-object en de standaardinstellingen .settings-bestand te gebruiken voor toegang tot instellingen. U kunt de Designer voor instellingen gebruiken om eigenschappen toe te wijzen aan instellingen. Gebruikersinstellingen worden ook automatisch opgeslagen voordat de toepassing wordt afgesloten. Uw Visual Basic-toepassing heeft echter rechtstreeks toegang tot instellingen. In dat geval moet u de MySettings-klasse openen en een aangepast .settings bestand gebruiken in de hoofdmap van het project. U moet de gebruikersinstellingen opslaan voordat u de toepassing beëindigt, net als voor een C#-toepassing, zoals beschreven in de volgende sectie.

Toepassingsinstellingen tijdens runtime openen of wijzigen in C#

In andere talen dan Visual Basic, zoals C#, moet u rechtstreeks toegang krijgen tot de Settings-klasse, zoals wordt weergegeven in het volgende Visual C#-voorbeeld.

Properties.Settings.Default.FirstUserSetting = "abc";

U moet de Save methode van deze wrapperklasse expliciet aanroepen om de gebruikersinstellingen te behouden. U doet dit meestal in de Closing event handler van het hoofdformulier. In het volgende C#-voorbeeld ziet u een aanroep naar de methode Save.

Properties.Settings.Default.Save();

Zie Overzicht van toepassingsinstellingen (.NET Framework)voor algemene informatie over het openen van toepassingsinstellingen via de Settings-klasse.

Apps migreren van .NET Framework naar .NET

.NET Framework maakt gebruik van het app.config-bestand om instellingen voor uw app te laden, zoals verbindingsreeksen en configuratie van logboekproviders. Modern .NET maakt gebruik van het appsettings.json-bestand voor app-instellingen. Zie Moderniseren na een upgrade naar .NET Frameworkvoor meer informatie over het converteren van app.config bestanden naar appsettings.json.