問題タブ [ef-database-first]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1223 参照

entity-framework-4.1 - MVC-mini-profiler を EF 4.1 Database First で動作させる方法

このためにSOをくまなく調べて、1日の大半を費やしました。セットアップはこちら

  • 2 つのデータベースにまたがる 3 つのリポジトリを持つリポジトリ パターンを使用する MVC 3 アプリ。
  • 両方の db 接続にDBContext APIを最初に使用する EF 4.1 データベース。
  • nuget からインストールされた mvc-mini-profiler

これは、リポジトリで Db コンテキストを作成する方法です

次に、コントローラーで

最後に、web.configに追加しました

これらの接続をプロファイリングするための次のステップは何ですか? これが Entity Framework への初めての露出であるため、ゆっくりと説明してください。そのため、EF 接続/コンテキストの詳細についてはほとんど想定していません。

0 投票する
1 に答える
554 参照

asp.net-mvc-3 - EF 4.1を使用したASP.Net MVC 3:最初にデータベースから最初にコードに切り替えることは可能ですか?

ネット MVC 3 Web アプリケーション。"database first"を使用して、既存のデータベースからモデルを生成しました。しかし今は、「コード ファースト」パラダイムを使用することを好みます。それはまったく可能ですか?コーディングした新しいモデルのテーブルを作成するようにソリューションに指示するにはどうすればよいですか?

0 投票する
1 に答える
670 参照

entity-framework - 「複数の関係に参加している外部キー」の状況でエンティティ フレームワークが心配している「データの不一致の可能性」は何ですか?

次のデータベース スキーマがあるとします。

データベースにABCは 2 つの FK があります。1 つはABonAIdBId、もう 1 つはBConBIdCIdです。

EF デザイナーを使用して、このデータベースからモデルを作成してみてください。

Include foreign key columns in the model チェックした場合、動作します。しかし、モデルに FK 列があるのはあまり良くありません。

Include foreign key columns in the model チェックを外した場合、FK の 1 つだけABCが正常にマッピングされます。何が問題だったのかを確認するには、xmlを表示する必要があります.edmx(Craig に感謝します!)、次のエラーが表示されます。

警告 6037: 外部キー制約 'FK_ABC_BC' がストレージ モデルから省略されています。テーブル「Model.Store.ABC」の列「BId」は、複数の関係に参加している外部キーです。データの不整合が発生する可能性があるため、1 対 1 のエンティティ モデルは検証されません。

SO で見つけることができるこの問題に関する他の唯一の言及を読みましたが、これは同じ問題ではないと思います。データベースの設計レベルでは何も問題はありません。当面はABandBCに代理キーを課すことでこれを回避しますが、本当に知りたいのは次のとおりです。

データベースに一致するモデルを作成した場合、ここで EF が心配しているデータの不整合は何ですか?

そして、すべてがうまくいくと説得するために私にできることはありますか?

0 投票する
3 に答える
6222 参照

entity-framework - EF 4.1 Database First アプローチでリポジトリ パターンを使用する

これは可能ですか?

例はありますか?私の検索はこれまでのところ無益であることが証明されています...

私がこのアプローチを使用している理由は、MVC 3 アプリのレガシー データベースに固執する必要があるためですが、非常に複雑な関連付けと継承階層がいくつかあるため、手動で行うのではなく EF でマッピングを生成する必要があります。単体テストにリポジトリ パターンを使用したい。アドバイスをいただければ幸いです。

0 投票する
1 に答える
153 参照

asp.net-mvc-3 - EF は、ID が設定されている DB のエンティティに InsertFunction がないことを教えてくれますか?

アプリケーションは、データベース ファースト アプローチで Entity Framework 4.1 を使用します。

データベースには、ログ記録用の単純なテーブルがあります。

モデルの OK を EntitySet 'LogEntrys' と Entity LogEntry に変換します。問題は、アプリケーションからテーブルに何かを挿入しようとすると、次のエラーが発生することです:

EntitySet 'LogEntrys' を更新できません。DefiningQuery があり、現在の操作をサポートする要素が要素に存在しないためです。

SO で同様の投稿を見たことがあり、このヒントで説明されているように XML edmx ファイルを編集して解決しようとしました: MSDN ブログのヒント 34、定義クエリを削除しました。キーは、本来あるべきように既に設定されています。

しかし、次のエラーが表示されます。

「オブジェクト名 'AMSModelStoreContainer.LogEntrys' が無効です。」

何が問題なのかわからない、または何が間違っているのですか?

何か案は?

ありがとうございました。

0 投票する
1 に答える
1023 参照

c# - 生成されたSQLで間違ったスキーマを使用しているEF4.1

私はEFに不慣れで、自分が間違っていることを理解できません。EF 4.1の「データベースファースト」を使用して、既存のデータベースのモデルを作成しました(変更できません)。データベースに必要なすべてのテーブルは、この質問では「my_schema」と呼ぶ特定のスキーマにあります。edmxデザイナーファイルのメインプロパティで、データベーススキーマ名を「my_schema」に設定しました。edmxファイルの生のXMLを調べると、正しいスキーママッピングがあるようです

例えば

ただし、DbContextクラスに設定されたEventsエンティティにアクセスしたときに生成されるSQLはまだ次のとおりです。

違いがあるかどうかはわかりませんが、ADO.netDBContextGeneratorを使用してクラスを生成しています。

誰かが私が間違っていることを知っていますか?

0 投票する
2 に答える
7013 参照

entity-framework-4.1 - Entity Framework 4.1 Database Firstは、DbContextT4で生成されたクラスに主キーを追加しません

Entity Framework 4.1を使い始めたばかりで、「データベースファースト」モードを試しています。EFが「ADO.NetDbContextGenerator」を使用してモデルクラスを生成する場合、[Key]属性を使用してクラスの主キーを識別すべきではありませんか?これがないと、T4MVCScaffoldingと互換性がないように見えます。

詳細は次のとおりです。

Entity Data Model Designer GUIを使用して、既存のデータベースからモデルに単純な「国」テーブルを追加しました。GUIは、「PK」という名前の単一の整数IDキーフィールドを主キーとして正しく識別します。(残念ながら、私は新しいユーザーなので、スクリーンショットを追加できません。代わりにCSDLを以下に含めました。)ただし、EFが「ADO.NetDbContext Generator」を使用してコードを生成する場合、PKは識別されません。生成されたクラスのキーフィールドとしてのフィールド(以下のコードの抜粋を参照)。

「国」テーブルのCSDL:

自動生成されたコードは次のとおりです。

これにより、MVCScaffoldingT4テンプレートを使用してコントローラーをスキャフォールディングしようとすると問題が発生します。「主キーのように見えるプロパティはありません」というエラーが表示されます。NuGetパッケージマネージャーコンソールからのコマンドと出力は次のとおりです。

ただし、生成されたクラスを手動で変更して[Key]属性をフィールドに追加すると、上記とまったく同じスキャフォールディングコマンドが正常に機能します。

では、なぜEFDatabaseFirstとT4MVCScaffoldingが一緒にうまく機能しないのでしょうか。そして、足場の問題がなくても、EFクラスはキーフィールドが何であるかを知る必要はありませんか?

0 投票する
1 に答える
238 参照

.net - EntityFramework 流れるような API の「孫」関係のマッピング

私は、EF 流暢な API で非常に一般的なケースのように思われるものをマップしようとしていますが、壁にぶつかっています。私は次のクラスを持っています:

次の表を使用します。

会社
ID - 整数

区分:
Id - int CompanyId int (FK)

従業員
ID - int
名前 - varchar(50)
DivisionId - int (FK)

Employee テーブルに CompanyID FK がある場合、このマッピングは非常に単純になります。

ただし、Employee テーブルから Company テーブルへの直接の FK がないため、遅延読み込みのために Company オブジェクトの Employees プロパティをマップできないようです。

私は何が欠けていますか?

0 投票する
1 に答える
197 参照

wpf - アプリケーションには 3 つの層が必要です

私はWPFで小さなアプリケーションを書いています。これにより、db からデータを保存および読み取ることができます。3 つの層 (ビジネス ロジック、プレゼンテーション層、およびデータ アクセス) があります。私はデータベース ファーストのアプローチを使用しており、Entity Framework がモデルを生成してくれました。

私の質問は、.edmx で生成されたモデルをどこに保存すればよいですか?

データ アクセス層に配置すると、ビジネス ロジックに重複するコードを記述する必要があります。また、このモデルをビジネス ロジックに配置すると、データ アクセス層に何を格納する必要がありますか?

0 投票する
3 に答える
6480 参照

c# - EntityFrameworkのObjectStateEntryからすべてのキーとその値を取得する

監査ログの目的SaveChanges()で、EF4.1データベースのメソッドをオーバーライドします-最初のアプローチ。

私はすべてのObjectStateEntryオブジェクトを持っていますが、各ObjectStateEntryからすべてのキーとその値を取得できるかどうか疑問に思っています。