Uygulama ayarlarını yönetme (.NET)
Uygulama ayarları, uygulama bilgilerini dinamik olarak depolamanızı sağlar. Uygulama ayarlarıyla, çalışma zamanında uygulama koduna dahil edilmemesi gereken bilgileri depolamak için bir istemci bilgisayar kullanabilirsiniz. Uygulama ayarları bağlantı dizesi, kullanıcı tercihleri ve daha fazlasını içerebilir.
Not
Uygulama ayarları, Visual Studio'nun önceki sürümlerinde kullanılan dinamik özelliklerin yerini alır.
Her uygulama ayarının benzersiz bir adı olmalıdır. Ad herhangi bir harf, sayı veya alt çizgi birleşimi olabilir. Ad bir sayı ile başlayamaz ve boşluk olamaz. Ad özelliği aracılığıyla Name
değiştirilir.
Uygulama ayarları, XML'de serileştirilmiş veya uygulayan ToString
/FromString
bir TypeConverter
veri türü olarak depolanabilir. En yaygın türler , Integer
ve Boolean
'lerdirString
. Değerleri , Objectveya bağlantı dizesi olarak da depolayabilirsinizColor.
Uygulama ayarları da bir değer tutar. Değer, Value özelliğiyle ayarlanır ve ayarın veri türüyle eşleşmelidir.
Ayrıca, uygulama ayarları tasarım zamanında bir formun veya denetimin özelliğine bağlanabilir.
Kapsama göre iki tür uygulama ayarı vardır:
Uygulama kapsamlı ayarlar, web hizmetinin URL'si veya veritabanı bağlantı dizesi gibi bilgiler için kullanılabilir. Bu değerler uygulamayla ilişkilendirilir. Bu nedenle, kullanıcılar çalışma zamanında bunları değiştiremez.
Kullanıcı kapsamlı ayarlar , formun son konumunu kalıcı hale veya yazı tipi tercihi gibi bilgiler için kullanılabilir. Kullanıcılar çalışma zamanında bu değerleri değiştirebilir.
Scope özelliğini kullanarak bir ayarın türünü değiştirebilirsiniz.
Proje sistemi, uygulama ayarlarını iki XML dosyasında depolar:
İlk uygulama ayarını oluşturduğunuzda tasarım zamanında oluşturulan bir app.config dosyası
Uygulamayı çalıştıran kullanıcı herhangi bir kullanıcı ayarının değerini değiştirdiğinde çalışma zamanında oluşturulan user.config dosyası
Uygulama bunu yapmak için özel olarak bir yöntem çağırmadığı sürece kullanıcı ayarlarındaki değişiklikler diske yazılamaz.
Tasarım zamanında uygulama ayarları oluşturma
Tasarım zamanında, uygulama ayarlarını iki şekilde oluşturabilirsiniz:
Proje Tasarımcısı'nın Ayarlar sayfasını kullanın.
Bir ayarı bir özelliğe bağlamanıza olanak tanıyan bir form veya denetim için Özellikler penceresini kullanın.
Uygulama kapsamlı bir ayar (örneğin, veritabanı bağlantı dizesi veya sunucu kaynakları başvurusu) oluşturduğunuzda, Visual Studio bunu etiketiyle <applicationSettings>
app.config dosyasına kaydeder. Bağlantı dizeleri etiketin <connectionStrings>
altına kaydedilir.
Kullanıcı kapsamlı bir ayar (örneğin, varsayılan yazı tipi, giriş sayfası veya pencere boyutu) oluşturduğunuzda, Visual Studio bunu etiketiyle <userSettings>
app.config dosyasına kaydeder.
Önemli
bağlantı dizesi app.config dosyasında depoladığınızda, parolalar veya sunucu yolları gibi hassas bilgilerin bağlantı dizesi açığa çıkarılmasını önlemek için önlemler almanız gerekir.
Dış kaynaktan kullanıcı kimliğini ve parolasını sağlayan kullanıcı gibi bağlantı dizesi bilgileri alırsanız, bağlantı dizesi oluşturmak için kullandığınız değerlerin bağlantınızın davranışını değiştiren ek bağlantı dizesi parametreleri içermediğinden emin olun.
Yapılandırma dosyasındaki hassas bilgileri şifrelemek için Korumalı Yapılandırma özelliğini kullanmayı göz önünde bulundurun. Daha fazla bilgi için bkz . Bağlantı bilgilerini koruma.
Not
Sınıf kitaplıkları için yapılandırma dosyası modeli olmadığından, uygulama ayarları Sınıf Kitaplığı projeleri için geçerli değildir. Özel durum, bir yapılandırma dosyasına sahip olabilecek Office Çalışma Zamanı DLL projesi için bir Visual Studio Araçları.
Özelleştirilmiş ayarlar dosyalarını kullanma
Ayar gruplarının kolay yönetilmesi için projenize özelleştirilmiş ayarlar dosyaları ekleyebilirsiniz. Tek bir dosyada yer alan ayarlar yüklenir ve birim olarak kaydedilir. Sık kullanılan ve seyrek kullanılan gruplar için ayarları ayrı dosyalarda depolamak, ayarların yüklenmesinde ve kaydedilmesinde zaman kazandırabilir.
Örneğin, projenize bir SpecialSettings.settings dosyası ekleyebilirsiniz. Sınıfınız SpecialSettings
ad alanında gösterilmese de My
, Kodu Görüntüle içeren Partial Class SpecialSettings
özel ayarlar dosyasını okuyabilir.
Ayarlar Tasarımcısı önce proje sisteminin oluşturduğu Settings.settings dosyasını arar. Bu Settings.settings dosyası, Proje Tasarımcısı'nın Ayarlar sekmesinde görüntülediği varsayılan dosyadır. Settings.settings dosyası, Visual Basic projeleri için Projem klasöründe ve Visual C# projelerinin Özellikler klasöründe bulunur. Proje Tasarımcısı daha sonra projenin kök klasöründeki diğer ayarlar dosyalarını arar. Bu nedenle, özel ayarlar dosyanızı oraya yerleştirmelisiniz. Projenizin başka bir yerine bir .settings dosyası eklerseniz, Proje Tasarımcısı dosyayı bulamaz.
Visual Basic'te çalışma zamanında uygulama ayarlarına erişme veya ayarları değiştirme
Visual Basic projelerinde, nesnesini kullanarak çalışma zamanında uygulama ayarlarına My.Settings
erişebilirsiniz. Ayarlar sayfasında Kodu görüntüle düğmesini seçerek Settings.vb dosyasını görüntüleyin. Settings.vb, bu olayları ayarlar sınıfında işlemenizi sağlayan sınıfını tanımlarSettings
:
Settings
Settings.vb sınıfı, oluşturulan sınıfın tamamını değil, yalnızca kullanıcıya ait kodu görüntüleyen kısmi bir sınıftır. nesnesini kullanarak uygulama ayarlarına erişme hakkında daha fazla bilgi için bkz. Uygulama ayarlarına My.Settings
(.NET Framework) erişme.
Kullanıcının çalışma zamanında değiştirmiş olduğu kullanıcı kapsamlı ayarların (örneğin, formun konumu) değerleri bir user.config dosyasında depolanır. Varsayılan değerler app.config dosyasında kaydedilmeye devam eder.
Çalışma zamanı sırasında, örneğin uygulamayı test etmek için kullanıcı kapsamlı ayarlar değiştirilirse ve bu ayarları varsayılan değerlerine sıfırlamak istiyorsanız Eşitle düğmesini seçin.
Ayarlara My.Settings
erişmek için nesnesini ve varsayılan .settings dosyasını kullanmanızı öneririz. Ayarlara özellik atamak için Ayarlar Tasarımcısı'nı kullanabilirsiniz ve ayrıca uygulama kapatılmadan önce kullanıcı ayarları otomatik olarak kaydedilir. Ancak Visual Basic uygulamanız ayarlara doğrudan erişebilir. Bu durumda sınıfına MySettings
erişmeniz ve projenin kökünde özel bir .settings dosyası kullanmanız gerekir. Aşağıdaki bölümde açıklandığı gibi, bir C# uygulaması için yaptığınız gibi, uygulamayı sonlandırmadan önce kullanıcı ayarlarını kaydetmeniz gerekir.
C'de çalışma zamanında uygulama ayarlarına erişme veya ayarları değiştirme#
C# gibi Visual Basic dışındaki dillerde, aşağıdaki Visual C# örneğinde gösterildiği gibi sınıfa doğrudan erişmeniz Settings
gerekir.
Properties.Settings.Default.FirstUserSetting = "abc";
Kullanıcı ayarlarını kalıcı hale getirmek için bu sarmalayıcı sınıfının yöntemini açıkça çağırmanız Save
gerekir. Bunu genellikle ana formun Closing
olay işleyicisinde yaparsınız. Aşağıdaki C# örneği yöntemine yapılan çağrıyı Save
gösterir.
Properties.Settings.Default.Save();
Sınıf aracılığıyla uygulama ayarlarına erişme hakkında genel bilgi için bkz. Uygulama ayarlarına Settings
genel bakış (.NET Framework).
Uygulamaları .NET Framework'ten .NET'e geçirme
.NET Framework, uygulamanızın bağlantı dizesi ve günlük sağlayıcısı yapılandırması gibi ayarlarını yüklemek için app.config dosyasını kullanır. Modern .NET, uygulama ayarları için appsettings.json dosyasını kullanır. app.config dosyalarını appsettings.json dönüştürme hakkında daha fazla bilgi edinmek için bkz. .NET Framework'ten .NET'e yükselttikten sonra modernleştirme.