Uygulama Ayarlar şeması

Uygulama ayarları, Windows Forms veya ASP.NET uygulamasının uygulama kapsamlı ve kullanıcı kapsamlı ayarları depolamasına ve almasına olanak tanır. Bu bağlamda, ayar uygulamaya veya geçerli kullanıcıya özgü olabilecek herhangi bir bilgi parçasıdır; veritabanından kullanıcının tercih edilen varsayılan pencere boyutuna bağlantı dizesi her şey.

Varsayılan olarak, bir Windows Forms uygulamasındaki uygulama ayarları, bir XML yapılandırma dosyasındaki ayarları depolamak için .NET yapılandırma sistemini kullanan sınıfını kullanır LocalFileSettingsProvider . Uygulama ayarları tarafından kullanılan dosyalar hakkında daha fazla bilgi için bkz. Uygulama Ayarlar Mimarisi.

Önemli

.NET Framework tarafından tanımlanan yapılandırma bölümlerinin çoğu artık .NET 6+ ve .NET Core sürümlerinde işlevsel değildir. ConfigurationManager yalnızca uyumluluk için sağlanır. Modern .NET, app.config yerine uygulama ayarları için appsettings.json dosyasını kullanır. Bkz. .NET Framework'ten .NET'e yükselttikten sonra modernleştirme.

Aynı ayarı yapmak için app.config içindeki kullanımı kaldırmayı ve varsa ilgili API'yi çağırmayı göz önünde bulundurun. Daha fazla bilgi için bkz . .NET'te yapılandırma.

Uygulama ayarları, kullandığı yapılandırma dosyalarının bir parçası olarak aşağıdaki öğeleri tanımlar.

Öğe Tanım
<uygulama Ayarlar> Uygulamaya özgü tüm <ayar> etiketlerini içerir.
<kullanıcı Ayarlar> Geçerli kullanıcıya özgü tüm <ayar> etiketlerini içerir.
<Ayarı> Bir ayar tanımlar. <Uygulama Ayarlar> veya <kullanıcı Ayarlar> alt öğesi.
<value> Bir ayarın değerini tanımlar. Ayarın alt öğesi><.

<application Ayarlar> öğesi

Bu öğe, istemci bilgisayardaki uygulamanın bir örneğine özgü tüm <ayar> etiketlerini içerir. Öznitelik tanımlamaz.

<user Ayarlar> öğesi

Bu öğe, şu anda uygulamayı kullanan kullanıcıya özgü tüm <ayar> etiketlerini içerir. Öznitelik tanımlamaz.

<setting> öğesi

Bu öğe bir ayar tanımlar. Aşağıdaki özniteliklere sahiptir.

Öznitelik Tanım
Adı Gerekli. Ayarın benzersiz kimliği. Visual Studio aracılığıyla oluşturulan Ayarlar adıyla ProjectName.Properties.Settingskaydedilir.
serializeAs Gerekli. Değeri metne seri hale getirmek için kullanılacak biçim. Geçerli değerler:

- string. değeri kullanılarak dize TypeConverterolarak serileştirilir.
- xml. Değer, XML serileştirmesi kullanılarak serileştirilir.
- binary. Değer, ikili serileştirme kullanılarak metin kodlanmış ikili olarak serileştirilir.
- custom. Ayarlar sağlayıcısı bu ayar hakkında bilgi sahibidir ve bu ayarı seri hale getirerek seri hale getirmektedir.

Uygulamada oluşturduğunuz ayarların adlarını Ayarlar> dosyanın üst kısmındaki< configSections> öğesinin altına girdi olarak ekleyin.< Örneğin:

<configuration>
    <configSections>
        <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
            <section name="WindowsFormsApp1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
            <section name="WindowsFormsApp1.Properties.MyCustomSettings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
        </sectionGroup>
    </configSections>
    ...
</configuration>

<value> öğesi

Bu öğe bir ayarın değerini içerir.

Örnek

Aşağıdaki örnekte, iki uygulama kapsamlı ayarı ve iki kullanıcı kapsamlı ayarı tanımlayan bir uygulama ayarları dosyası gösterilmektedir:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
      <section name="WindowsApplication1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
    </sectionGroup>
    <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
      <section name="WindowsApplication1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" />
    </sectionGroup>
  </configSections>
  <applicationSettings>
    <WindowsApplication1.Properties.Settings>
      <setting name="Cursor" serializeAs="String">
        <value>Default</value>
      </setting>
      <setting name="DoubleBuffering" serializeAs="String">
        <value>False</value>
      </setting>
    </WindowsApplication1.Properties.Settings>
  </applicationSettings>
  <userSettings>
    <WindowsApplication1.Properties.Settings>
      <setting name="FormTitle" serializeAs="String">
        <value>Form1</value>
      </setting>
      <setting name="FormSize" serializeAs="String">
        <value>595, 536</value>
      </setting>
    </WindowsApplication1.Properties.Settings>
  </userSettings>
</configuration>

Ayrıca bkz.