VS2013 と SQL Server Compact 4.0 SP1
[2015/09/29 追記]
Windows10 + VS2015に対して
[2015/04/16 追記]
最後に追記あり
Windows XPが、後1ヶ月のサポートになったので、環境を
「Windows8.1 + IE11 + VS2013」
で、新しく構築。
早速、以前のプロジェクトを読み込んでみたが、いつものVSとは違い
アップグレートウィザードが走らずに普通に読み込めた。
自分は、SQL Server Compactが大のお気に入りで、
クライアントPCで完結するアプリで、DBが必要な場合には
SQL Server Compactで決まり。
以前のプロジェクトのDBテーブルの変更があったので、
VS2013を起動して、[ツール] - [データベースへの接続]を選択したが、
データソースに、SQL Server Compactがない・・・・・・。
こりゃ、別途インストールが必要なのかと思い、
MSのサイトから、SQL Server Compact 4.0 SP1をインストールした。
さて、DBに繋ごうと、[データベースへの接続]を選択したが
「じぇ、じぇ、じぇ・・・!」
相変わらず、データソースがない。
で、ぐぐってみると、
VS2013から、大好きなSQL Server Compactはサポートされないらしい。
MSDN Blog
http://blogs.msdn.com/b/sqlexpress/archive/2011/07/12/introducing-localdb-a-better-sql-express.aspx
ローカルでDB使いたければ、LocalDBを使えと、いうことらしい。
でも、ネット上では、LocalDBは重いとか、配布が大変だとかで
よい評判は聞かない。
(開発者がSQL Serverをターゲットの開発に使うのは良いらしい。)
MSに対して、引き続きVS2013でも、サポートするように嘆願しているらしい。
嘆いていても、はじまらないので、ぐぐってみました。
捨てる神あれば、拾う神ありで、CodePlexで公開されていました。
SQL Server Compact Toolbox
http://sqlcetoolbox.codeplex.com/documentation
これをインストールすると、今までのサーバーエクスプローラとは違うウィンドウが開くが、今までと同じように使える。
これで問題解決かと思いきや、
なんと、
なんと、
セットアップファイルを作成する段階で、
必須コンポーネントのところに、「必要なブートストラップが見つかりません。」と警告が出る。
構わず、セットアップファイルを作るとエラーにはならず作成される。
実行環境にインストールしてみると、案の定
「ファイルまたはアセンブリ 'System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91'、またはその依存関係の 1 つが読み込めませんでした。指定されたファイルが見つかりません。」
と、エラーになる。
実行環境にユーザ自身で、MSのサイトからインストールしてもらうしかないのか????
で、調べた結果
VS2012 のマシンの
Program Files (x86)\Microsoft SDKs\Windows\v8.0A\Bootstrapper\Packages
にある
SQL Server Compact Edition 4.0
を、
VS2013のマシンの
\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\Bootstrapper\Packages
にコピーしてみた。
とりあえず、これで必須コンポーネントの警告は消えた。
ライセンス的に問題があるのか、現在調査中・・・・・
だれか知りませんか~
追記:
警告は消えたけど、manifestには含まない・・・・・・orz
[2015/04/16 追記]
上記の件が、
Visual Studio 2013 で SQL Server Compact がサポートされない問題に対応 | SHIN-ICHI の技術ブログ
にありましたので、本日追試。
もう一度、
BootStrapを
Windows8 VS2012 → Windows 8.1 VS2013
へコピー。
ClickOnce発行時に、[発行]-[必須コンポーネント]で
SQL Server Compact 4.0 SP1
がチェックできて、警告がないのを確認。
普通に、ClickOnceの発行。
Windows7のクリーンなマシンを用意して、インストールURLへアクセスして、インストールボタンをクリック。
無事に、SQL Server Comact 4.0 SP1がインストールされました。
又、ライセンス的にも問題がないようです。
[2015/09/29 追記]
環境をWindows10 + VS2015をクリーンインストール。
VS2013と同じようにBootStrapをコピーしようとしましたが、Windows8.1とはで入れクトリ構成が違うようで、
C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages
に、コピーすると、警告が消えました。
[2017/10/05 追記]
VS2017では、Bootstrapsのパスが変わっています。
C:\Program Files (x86)\Microsoft SDKs\ClickOnce Bootstrapper\Packages
にコピーすると警告が消えました。