Entity Frameworkを使用したSQL Server Compact Edition

c# entity-framework sql sql-server-ce

質問

SQL Server Compact EditionをEntity Frameworkと一緒にVisual Studio 2008 SP1で使用しようとしました。これが私がしていることです:

1)コンソールアプリケーションタイプの新しいプロジェクトを作成します。

2)プロジェクトを右クリックし、[追加] - > [新しい項目]を選択します。

3)Something.sdfという名前のローカルデータベースを追加します。

4)[新しい項目の追加]ウィザードの次のページで、デフォルトのデータセット名(SomethingDataSet)を選びます。

これで、サーバーエクスプローラで、データ接続の下に新しいデータベースSomething.sdfが表示されます。 5)プロジェクトをもう一度右クリックして、「追加」 - >「新規項目」を選択します。

6)ADO.NET Entity Data Modelをデフォルト名Model1.edmxで追加することを選択しました

7)ウィザードの次のページで、データベースからモデルを生成することにしました。

今度は私に「あなたのアプリケーションはデータベースに接続するためにどのデータ接続を使用すべきですか?」と尋ねます。このダイアログでは、作成済みのデータ接続を使用するか、新しい接続を作成するかを選択できます。

事前に作成されたデータ接続を含むドロップダウンは空です(私のSomething.sdfがここに表示されるはずですか?)。 New Connectionを押すと、Microsoft SQL Server、Microsoft SQL Server Database File、およびMicrosoft SQL Server CEのいずれかを選択できます。 [その他]を選択した場合、データソース "SQL Server用.NET Frameworkデータプロバイダ"が表示されますが、これは必要なものではありません。

私はここで何が足りないのですか?エンティティデータモデルの追加ウィザードでSQL Server CEデータベースを選択できないのはなぜですか?

受け入れられた回答

これが同じ問題であるかどうかわからないが、ドロップダウンのオプションとしてCEを取得するにはSQL Server Management Studio Express 2008をダウンロードしなければならなかったと思います。私はそれをもっと詳しく調べて、あなたにもっと良い反応をさせるでしょう。

編集する

C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ CONFIG \ machine.configに移動した場合

次のノードが見つかります。

<configuration>
    <system.data>
        <DbProviderFactories>
            <add name="Microsoft SQL Server Compact Data Provider" invariant="System.Data.SqlServerCe.3.5" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=3.5.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>

あなたがそれを見つけないならば、私に知らせてください。

編集2:

私はVS 2010 Beta 1を実行しています、そしてあなたがリストアップしたプロセスは私がSQL CEを選択することを可能にします。しかし、私は2008年に解雇し、あなたと同じ結果を得て、SQL CEはもはやデータソースの選択肢ではありません。

私は2008年に最初にプロジェクトを開始しましたが、次のリンクに示すように、「Entity Framework Beta 3用のMicrosoft SQL Server Compact 3.5 SP1 Beta」をインストールする必要がありました。

http://technet.microsoft.com/en-us/library/cc835494.aspx

しかし、ダウンロードはもう利用できないようです。私はそれをどこにも見つけることができませんでした、そして彼らが記事の中で提供するリンクは壊れています。

2010にアップグレードした後、私はCEがオプションではないという同じ問題に遭遇したので、私はVS 2008 SP1を再インストールしようとしました、そして結局私がしなければならないことはmachine.configに上で述べたノードを追加することだけでしたC:\ WINDOWS \ Microsoft.NET \ Framework \ v4.0.20506 \ Configにあります。

すみません、私はそれ以上の助けになることはできませんでした、しかし私は私の2008 SP1があなたのものと同じ問題に苦しんでいると思います。

編集3:2008 SP1は「Entity Framework用のコンパクト3.5 SP1 Beta」をインストールする必要はなく「動作する」はずですが、2008年にService Pack 1をインストールしようとしたときに同じ症状が発生します。残った唯一の考えは、いくつかのSQL CE 3.5コンポーネントを再インストールしようとしていることです。


人気のある回答

Sql Server Compact 3.5接続を作成する方法を探していて、オプションが見つからない場合は、VSを閉じてvs2010 DVDからSSCEVSTools-esn.msiを実行するだけです。 D:\ Visual Studio 2010 \ WCU \ SSCE



Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ