接続文字列でを使用して、wpf アプリのデータベース ファイルが存在するディレクトリを設定する方法を見つけました|DataDirectory|
が、もう少し先に進みたいと思います。
msdn SqlConnection.ConnectionString Propertyに記載されているように、
パスは、DataDirectory 置換文字列を使用して絶対パスまたは相対パスにすることができます。DataDirectory を使用する場合、データベース ファイルは、置換文字列が指すディレクトリのサブディレクトリ内に存在する必要があります。
今、アプリケーションによって制御されるDataDirectory
カスタムDatabaseLocation
属性を使用して、だけでなく完全な場所を設定したいので、接続文字列を処理する必要はありません。
つまり、接続文字列は次のようになります。
connectionString="Data Source='|DataDirectory|\database.sdf'" providerName="System.Data.SqlServerCE.4.0"
これに:
connectionString="Data Source='|DatabaseLocation|" providerName="System.Data.SqlServerCE.4.0"
コードでは、ユーザー構成を読み取り、便利なデータを適切な場所に設定します。
AppDomain.CurrentDomain.SetData("DatabaseLocation", someVarWithDatabaseLocation);
この方法ではsomeVarWithDatabaseLocation
、ユーザー インターフェイスからビジネス、さらにデータ アクセスまでのコンテンツを必要とせず、接続文字列を作成できます。
これは可能ですか、それとも|DataDirectory|
接続文字列ビルダーによって魔法のタグのみが処理されますか?
ありがとうございました