問題タブ [ef-model-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 に答える
99 参照

linq - 例外をトローイングするLinq

EFをLINQとで使用するプロジェクトを作成しますModel first。そのため、edmxに基づいて、データベースとクラスを作成しました。

だから私はいくつかの問題を抱えました。クリックして、コードが機能しているかどうかをテストしました。

したがって、私のZUserクラス(コントローラー)では、次のコードを実行しました。

そして私のモデル(私のedmxによって生成されたクラス

問題

  1. [Table]Modelクラスにを入れないと(追加しました)、このエラーが発生しました。これが正しい修正方法かどうかはわかりません。

タイプ'{0}'はテーブルとしてマップされていません。

  1. 上から問題を「修正」した後。私は私のでこの新しいものを手に入れましたforeach (ZUser usr in query)

メンバー'{0}。{1}'には、SQLへの変換がサポートされていません。

これを修正または回避する方法がわかりません。

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

entity-framework-5 - カスタム t4 テンプレートを DDL Generation Template ドロップダウンリストに追加する

フォルダーにテンプレートを追加できることを知っています

C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\Extensions\Microsoft\Entity Framework Tools\DBGen

DDL 生成テンプレートのドロップダウンリストに表示されるようにしますが、チーム メンバーが同じフォルダーにテンプレートを追加できるように、テンプレートをチーム メンバーに配布する必要があります。

テンプレートをVS 2012ソリューションに何らかの方法で追加し、同じドロップダウンリストに表示することで同じ結果を達成できることを望んでいました

これを達成する方法を知っていますか?私はVS 2012を使用しており、データベースを生成するためにModel Firstアプローチを使用しています

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

asp.net-mvc - MVC で使用するための Entity Framework の学習、最初に取るべきアプローチはどれですか?

私は MVC と EF の初心者です。これらのテクノロジーをうまく活用するために、物事をより明確に理解することにしました。

今、私は EF について読み始めました。そして、Model-firstテクニックがあることを知りました。Database-firstCode-first

MVCを使用して開発するので、私にとって最も有益なものから始めて、他の2つに戻ってそれぞれを比較したいと思います。

私の唯一の質問は、どのテクニックから始めて使用する必要があるかということです。

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

entity-framework - Entity Framework は、既定のテーブル値を使用してデータベース スキーマ (SQL) を生成します。

私はEF 5とSQL Server 2005、モデルファースト(一種)を使用しています。

つまり、通常は SQL Server デザイナーでスキーマを作成しますが、そのスキーマを EF にインポートして、視覚的に表示できるようにします。往々にして往復があります。

ただし、EF モデルに基づいて DB スキーマを生成しようとすると、GUID ID にデフォルト値として割り当てた NEWID() デフォルト値はすべてスキップされますが、ID フィールドはスキップされません。 int 型の。

この理由を説明するこの投稿を見つけました: Entity Framework 4 and Default Values

ただし、私の質問には答えません: Entity Framework で、uniqueidentifier 型の既定値 NEWID() を使用して SQL DDL データベース スキーマを生成するにはどうすればよいですか?

ノート:

POCOエンティティなどからそれらを設定する方法は気にしません(それを説明する投稿がたくさんあります)-私の懸念は、SQL DDLを正しく生成して、これらの値が失われることを心配せずにデータベースをシードできるようにすることです。

0 投票する
0 に答える
216 参照

entity-framework - Entity Framework Model First および Code First TPH の問題

モデルを最初に作成するか、TPH の概念を使用して最初にコードを作成しようとすることで、2 つの問題に直面しています。

問題は、次のように、3 つのレベルで階層ごとにテーブルを使用する必要があることです。

Model First を使用すると、最後の階層エンティティ (第 3 レベル) がデータベースに保存されません。別の抽象エンティティを継承する抽象エンティティを継承するこのエンティティからインスタンスを作成します。2 つの抽象エンティティのデータは保存されますが、最後のエンティティは保存されません。継承が最大 2 つのレベルで行われる場合、正常に機能します。

Code First を使用しようとすると、同じ名前の属性を共有できないという問題があります。たとえば、ClassB と ClassC には「Name」という名前のプロパティがあり、どちらも ClassA を継承します。データベースを生成するためにマップするときに、ClassA という sql テーブルのみを作成したいのですが、「Name」列を共有せず、Name 列と Name1 列を作成します。

このモデルのいずれかを機能させる必要があります。そうしないと、モデルで継承を使用できません。

助けてください!

ありがとう

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

mysql - Visual Studio 2010 の Entity Framework 5 と MySql - Model First の問題

MySql データベースを使用して、Visual Studio 2010、.NET 4.0 でアプリケーションを開発しました。

Entity Framework 5.0 と EF 5.x DbContext Generator for VB (NuGet を使用)、次に MySql Connector 6.5.5 をインストールしました。私はModel Firstアプローチを使用しているので、2つのテーブルを作成してから、「モデルからデータベースを生成..」オプションを選択しました。接続プロバイダーと接続パラメーターを設定した後 (データベースへのテスト接続が成功した状態で)、[完了] をクリックすると、*.sql ファイルが生成されましたが、データベースには何も作成されませんでした。さらに悪いことに、生成された SQL スクリプトは SQL Server Flavor にあり、次のヘッダーがあります。

Mysql および MySql コネクタを使用して EF を適用し、データベース テーブルを自動的に作成し、SQL Server スクリプトではなく、MySql スクリプトを生成する方法は?

WP さん、よろしくお願いします。

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

vb.net - 関連付けの奇妙な動作

Model First アプローチで、.NET 4.0 で実行されている EF5 に関する次の問題を見つけました: 次の自動生成エンティティがあります。

Notice エンティティは、Order エンティティおよび Employee エンティティと 1 (Order、Employee) 対多 (Notice) の関係で関連付けられます。

その後、Order エンティティは Employee エンティティとも関連付けられます。つまり、多数 (注文) 対 1 (従業員) の関係です。

次に、Notice エンティティと Employee エンティティの違反との関係により、次の単体テストが失敗すると予想します (notice1.employee ナビゲーション プロパティを割り当てません)。

しかし、結果テストは合格です。データベースでは、Notice->employee_id の値は Order->employee_id の値と同じですが、これらの外部キーが異なる Employee オブジェクトを指している可能性があるため、予期されていません。私はnotice1.employeeナビゲーションプロパティを自分で設定する必要があると予想してDbUpdateExceptionいました.それを忘れると例外が発生したいと思います.

この奇妙な EF5 の動作の理由は何ですか?

アップデート:

CreateNewNotice()CreateNewOrderWithAllRequiredAndRelatedEntities()実装:

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

c# - ナビゲーション プロパティの戻り値の型を変更する方法

WinForms を使用したEF5 データバインディングに関する次の記事を読みました。

VS2010、.NET 4.0、および EF5 Model First アプローチを使用していますが、自動生成されたエンティティ クラスを変更せずに、VS2010 EF Designer でナビゲーション プロパティの戻り値の型を変更する方法がわかりません。たとえば、ナビゲーション プロパティの戻り値の型を から に変更する必要がありICollection<T>ますObservableCollection<T>が、プロパティ ビューでは [戻り値の型] オプションが無効になっています。

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

entity-framework - 継承されたテーブルでカスケード削除を処理する方法は?

継承されたテーブルを使用しているときに、ON DELETE CASCADE で問題が発生しました。

次のテーブルがあります(モデルが最初) データベース モデル

ここで、Entity1 のエントリを削除したいとします。

シンプル...しかし、SaveChangesは次の例外をスローします。

DELETE ステートメントは、REFERENCE 制約 FK_EntityA_inherits_BaseEntity" と競合しました。データベース "MyDB"、テーブル "dbo.BaseEntitySet_EntityA"、列 'Id' で競合が発生しました。ステートメントは終了しました。

これを修正するにはどうすればよいですか?


アップデート

VS2010 と VS2012 のモデル デザイナーが SQL を出力する方法の違いに気付きました。

VS2010 :

DELETE NO ACTIONに関する注意事項

VS2012

DELETE CASCADEに関する注意事項

それはかなり重要です...