2011-12-20 28 views
5

Bu tür bir "yeni kullanıcı" sorusu, ancak .NET uygulamaları çalıştırılan arasında kullanıcı tarafından yapılandırılmış veri depolamak için en iyi yolu nedir merak ediyorum..NET uygulamaları "hatırla" tercihlerini, vb?

Örneğin, uygulamam için tercihlerin bir listesini oluşturmak istiyorsam, bu tercihleri ​​depolamanın en iyi yolu ne olurdu, böylece uygulamayı bir daha çalıştırdığım zaman yürürlüğe girecekler mi? Hangi dosya türünü depolamalıyım? Nerede saklamalıyım? Uygulamanın hepsine dikkat etmesini istiyorum, bu yüzden kullanıcının endişelenmesi gerekmiyor.

cevap

6

Web uygulaması veya bir Windows uygulaması mı yazıyorsunuz? Cevap ortamına dayalı ancak genel olarak depolamak tercihleri ​​için çeşitli seçenekler vardır değişebilir:

  • Veritabanı tablo (SQL Server, Oracle, MySQL veya SQL Server Express, iyi seçenek)
  • XML veya biçimlendirilmiş metin dosyası
  • Uygulama yapılandırma dosyası (app.config veya web.config)
  • Windows Kayıt

Yine, ortama bağlıdır, ancak bu bir kaç seçenek vardır.

+0

Muhtemelen bu sırayla% 100 kabul edildi. Bir veritabanı ideal olurdu, ancak yalnızca kaydetme ayarları için bir tane eklemezdim. Bir XML dosyası veya INI ikinci tercihim olur, bunu App/Web.config izler ve kayıttan sakınırdım. Değerler çok sık değişmezse uygulama yapılandırmasını kullanırdım. @Anthony Shaw tarafından atıfta bulunulan windows uygulamaları için .NET Ayarları bir seçenek olabilir, ancak bunları hiç kullanmadım. –

+1

Winformlar için user.config olur. app.config uygulama kapsamı ayarları içindir ve salt okunurdur. –

1

VS Projeler, proje özelliklerinde uygulama için profil tabanlı tercihlere sahiptir, bundan faydalanabilirsiniz.

1

Bunu yapmanın yaygın bir yolu, Windows registry aracılığıyladır. Uygulamalar genellikle kendi klasörlerini kayıt defterinde oluştururlar ve sonraki çalışmalarda hatırlanacak olan dil, düzen vb. Gibi verileri saklarlar.

7

Bir Windows Uygulamasına başvurduğunuzu varsayıyor muyum?

Kullanabileceğiniz uygulamada yerleşik bir Ayarlar sınıfı vardır. Birlikte bakmak isteyeceksiniz tek şey uygulama yükseltmeleri üzerinde olmakla birlikte, ayarların yükseltilmesi gerekiyorsa kontrol edip uygun yöntemi Burada

çalıştırmak bu yaratarak yürür bir makale vardır olabilir http://msdn.microsoft.com/en-us/library/25zf0ze8.aspx

uygulama yükseltilir Sonra

kod bloğunu aramak lazım yoksa ayarlarınız sen ile Visual Studio proje ayarlarını kullanabilirsiniz

if (Properties.Settings.Default.CallUpgrade) 
{ 
    Properties.Settings.Default.Upgrade(); 
    Properties.Settings.Default.Reload(); // to activate the settings 
    Properties.Settings.Default.CallUpgrade = false; 
    Properties.Settings.Default.Save();// to save the new value of CallUpgrade    
} 
+1

+1 Tipik bir winform uygulaması için bu en mantıklı çözümdür. Tekerleği neden yeniden yaratıyoruz? Properties.Settings çalışır. –

1

varsayılan geri alınır (OneClick Dağıtım ile söylemek) Kullanıcı etki alanı çözümlendi.

Here buna nasıl kısa bir örnektir.

Bu masaüstü uygulaması yalnızca için geçerlidir DÜZENLEME.