-1
SqlCeConnection cs = new SqlCeConnection(@"Data Source=C:\Users\Shahid\Documents\Visual Studio 2010\Projects\DarUlIfta\DarUlIfta\DB.sdf");

これは完全なパスで正常に機能します

しかし、相対パスを使用するときに直面している唯一の問題は、データベースがデータを保存しなくなることです。実行時にアプリケーションを閉じると正常に動作しますが、データベースに記録があります。私は何をすべきか?

4

1 に答える 1

0

接続文字列は、プロジェクト ソース フォルダー内のデータベースに対するものです。それは違うの; ソフトウェアを展開するとき、ソース コードは展開しません。デプロイされたデータへのパスを決定する必要があります。あなたが私たちに見せていない情報に応じて、これを行うにはいくつかの方法があります.

最初の推測として、これを試してください:

SqlCeConnection cs = new SqlCeConnection(@"Data Source=|DataDirectory|\DB.sdf");

それが機能する場合は、展開のプロパティについて学習する必要があります。それでもうまくいかない場合は、あなたが何をしようとしているのかについて、さらに多くの情報が必要になります。

また、Using a database in .NETも参照してください。

于 2012-08-23T16:21:31.897 に答える