1

私はいくつかの 3 層アーキテクチャ プロジェクトに取り組んでいます。

DAL、BLL、およびプレゼンテーションの 3 つの異なるプロジェクトで 1 つのソリューションを作成しました。

DAL プロジェクトの App_Data フォルダーには、私の mdf ファイルが含まれています。私の DAL クラスの 1 つで、次のコマンドを使用してデータベースに接続しています。

Conn = new SqlConnection("Data Source =.\\SQLExpress; Integrated Security =true; AttachDbFilename = |DataDirectory|\\" + dbName + "; User Instance =true;");

実行しようとすると、|DataDirectory| が表示されます。プレゼンテーション プロジェクトの App_Data フォルダー (存在しない) のパスを返します。

DAL プロジェクトの App_Data フォルダーに変更するにはどうすればよいですか?

ありがとう!

4

2 に答える 2

1

物理パスを指定できます。

ただし、おそらくそうすべきではありません。それがあなたが探している答えではないことはわかっていますが、アプリケーションがデプロイされたときに何が起こるかを検討してください。おそらく、ソリューションを展開するのではなく、コンパイルされたプレゼンテーション プロジェクトのみを展開することになります。この場合、データベースをプレゼンテーション プロジェクトの App_Data フォルダーに格納し、参照をそのままにしておく方が理にかなっています。

于 2013-07-03T09:17:28.560 に答える
0

データベースをプレゼンテーション プロジェクトの App_Data フォルダーに移動してみませんか?

于 2013-07-03T09:15:40.873 に答える