2010-12-29 12 views
1
私はPOCOクラスを記述することで、コード最初の開発とEF4 + CTP5を使用していくつかのテストを実行しようとしていて、既存のデータベースへの接続、次のような問題

Entity Frameworkの4 CTP 5コードファースト開発

  1. に直面している

    は私投げます例外:私は、ファイルを開くことができません、接続文字列に新しいファイル名を与えることによって、コードから新しいデータベースを作成できますが、データベースがモデルのメタデータ

  2. が含まれていないため
    モデルとの互換性を確認することができません(データベース)Runninの後にManagement Studioを使用するいくつかのテストに対して、管理スタジオは特定のエラー詳細が提供されていない状態でデータベースをアタッチしようとしたときにファイルを追加することを許可していません。

+0

次の記事を参照してください。1)既存のデータベースでEF "コードファースト"を使用する - http://weblogs.asp.net/scottgu/archive/2010/08/03/using-ef-code- first- with-an-existing-database.aspx 2)EF4 CTP5をパートで見る:第4回 - 新しいデータベースと既存のデータベースをコードで最初に扱う - http://thedatafarm.com/blog/data-access/looking-at-ef4 -ctp5-in-parts-part-4-ndash-working-new-existing-existing-in-code-firstコード/ –

答えて

4

#1では、global.asaxに次の行を追加してみましたか?

Database.SetInitializer<CustomContextNameHere>(null); 

ここで、 "CustomContextNameHere"はコンテキストオブジェクトです。

#2までは、デフォルトのASPNETDB.MDFファイルを意味すると仮定しています。 VSでサーバーエクスプローラーでファイルを開こうとしましたか?ソリューション内でダブルクリックすると、すぐに開くことがあります。

+0

Ctp5では、ScottGuの記事(http:// weblogs .asp.net/scottgu/archive/2010/12/08/announcing-entity-framework-code-first-ctp5-release.aspx)は、DbDatabase.SetInitializerを適用した後に動作します。(null); – skjagini

+0

ええ、私もそれを参照してください。うまくいけば、彼らはすべてRTMの前に打ちのめされるでしょう。 – ptrandem

関連する問題