WinForms アプリケーションを作成したいと考えています。このアプリケーションには、データベースに保存される多くの構成可能なオプションがあるため、実行後も保持できます (印刷設定、デザイン オプションなど)。
データベースへの頻繁なアクセスを避けるために、これらのオプションをロードするためにどのようなアプローチをお勧めしますか?
ありがとう!
WinForms アプリケーションを作成したいと考えています。このアプリケーションには、データベースに保存される多くの構成可能なオプションがあるため、実行後も保持できます (印刷設定、デザイン オプションなど)。
データベースへの頻繁なアクセスを避けるために、これらのオプションをロードするためにどのようなアプローチをお勧めしますか?
ありがとう!
いくつかの問題があります。データベースに保存された設定は、すべてのユーザーによって共有されます。この場合、ユーザーごとに設定を行うことを検討しました。より良いオプションは、暗号化して使用できるローカル構成ファイルに保存することです。ユーザー間で何かを共有する必要がある場合は、その特定のオプションに db を使用できます。アプリケーションが読み込まれる前にこれらのオプションを読み込み、オブジェクトを介してアクセスできます。
ユーザーに進行状況を表示することで、SPlash 画面でこれらのデータベース フェッチ操作を実行できます。
セキュリティが重要でない場合は、フォームが読み込む xml ファイルに設定を保存することもできます。必要なプロパティをロードするクラスを作成することもできます。
http://msdn.microsoft.com/en-us/library/system.xml.serialization.xmlserializer.aspx
[Serializable()]
public class Defaults
{
public string Description { get; set; }
public double Tolerance { get; set; }
public string Units { get; set; }
}
internal class FormDefaults
{
public void LoadSettings()
{
string kfileString = @"C:\Default_Settings.xml";
var q = from el in XElement.Load(kfileString).Elements()
select new FormDefault()
{
Description = el.Element("InstrumentDescription").Value,
Tolerance = Double.Parse(el.Element("InstrumentMassTolerance").Value),
Units = el.Element("InstrumentMassUnits").Value,
};
}
}
}
それはかなり大雑把ですが、かなりうまく機能し、セットアップが非常に簡単な同様のものがありました。
乾杯