問題タブ [ef4-code-only]
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.
asp.net-mvc - EF4、MVC 3、AzureおよびCodeFirstまたはTraditional
SQLAzureバックエンドを備えたAzureで実行されるASPMVC3を使用してWebアプリケーションを構築することを計画しています。Microsoftスタックを使用したいのですが、別のスタックに変更する予定はありません。WCFとWFの使用を検討していますが、将来的にはそうなるでしょう。
Entity Frameworkを使用するための従来のコードファーストアプローチを見ましたが、どちらかのアプローチを使用することに利点があるかどうかはわかりません。確かにそれぞれに利点がありますが、私にとっては、クラスがEFクラスから継承するかどうかは気にしません。私が欲しいのは、最も効率的な解決策を見つけることです。
誰かが私にどのアプローチが最善かもしれないかについてアドバイスをくれますか?
どうもありがとう
リチャード
.net - EF4プロパティタイプのプリミティブの代わりに構造体を使用する
intビットマスクを含むEF4エンティティ(コードファースト)があります。ビットマスクの操作を簡単にするためにビットマスク構造体を作成しました(ビットにアクセスするためのブールプロパティを提供します)。ビットマスク構造体には、intとの間で変換するためのオーバーロードされた暗黙の演算子が含まれています。
プロパティタイプをビットマスク構造体に設定しようとしましたが、値が0として返されます。データベースの値に値があり、単体テストでビットマスクが機能することがわかっています。HasColumnTypeを「INT」に設定しました。
プロパティ...
コンテキストオブジェクトから...
これは可能ですか?もしそうなら、それを機能させるために私は何をする必要がありますか?
odata - WCF データ サービス & EF4 CTP5、クエリの既定の熱心な読み込みスキーマを構成する方法は?
プロジェクト: OData (Wcf データ サービス) を介して、コード ファースト アプローチによって構成された Entity Framework ObjectContext を公開します。
単純なクエリと CUD 操作では、すべてが正常に機能します。ただし、デフォルトのスキーマの読み込み (サーバー側) を構成する方法がわかりません。
IE: 私のエンティティ Customer が Addresses のコレクション、または Manager と呼ばれるエンティティとの 1 対 1 の関係を持っている場合、Customers に対するすべてのクエリがすべてのアドレスと Customers エンティティのマネージャーを自動的にロードするように ObjectContext を構成するにはどうすればよいですか?
クライアント側では、呼び出し元が を使用しquery().Expand("path")
てデータを熱心にロードできることを知っています。しかし、それをサーバー側で指定して、Customers エンティティに対するすべてのクエリがデフォルトで設定されているか、.Include("Addresses")
または.Include("Manager")
設定されるようにしたいですか?
何か案が?
考えられる唯一の「ハック」は、リクエストHTTPModule
を傍受して URL に追加するものです。より良いものが見つからない場合、これが私の最後の解決策になります...GET
?expand=XXX
ご協力いただきありがとうございます!
entity-framework - EF4 CTP5、異なるエンティティを同じ(既存の)テーブルにマッピングする
コードファーストアプローチ(ただし、既存のデータベーススキーマを使用)では、2つの異なるエンティティ(顧客とリソース)を同じテーブルにマップしようとしています。両方のエンティティは同じキーとマッピングを持っています。
ただし、アプリを実行すると、実行時エラーが発生し、次のような不思議なメッセージが表示されます。
例:
上記のコードは、お客様/リソースコードに似ています(ただし、説明が簡単です)。ただし、同じエラーメッセージが表示され、主キー名が一致しないため、EntityAとEntityBを同じテーブルにマップできないことが示されます。
私たちのマッピングの何が問題になっているのかについて何か考えはありますか?同じテーブルに異なるエンティティをどのように配置できるか考えてみてください。
ご協力いただきありがとうございます
c# - 多対多がデータを保持している場合のエンティティフレームワーク
EntityFrameworkCTP5を使用しています。
私はこのようなスキーマを持っています:
- グループには多くのテキストの説明が含まれています。
- textdescriptionsには多くのテキストがあります。
- 言語には多くのテキストがあります。
したがって、4つのテーブルがあります。 1対多の説明多対多のテキスト多対1の言語をグループ化します。
したがって、私は多対多の関係を持っており、その関係にはデータも含まれています。
テキストとTextDescriptionの定義(グループと言語のIDを照会できるため、ここでは追加していません)
新しい言語または新しいテキストのいずれかを追加すると、多対多の関係がデータベースに挿入されません。(それは悪い考えだと思うので、結局、それが唯一の解決策であれば、私はそれを行うことができるでしょう)
したがって、データベースから特定のグループのすべてのテキストをフェッチする必要がある場合に、これをスマートに処理するにはどうすればよいですか。また、その言語のテキストがある場合は、翻訳も取得します。
翻訳オブジェクトがない可能性があるため、翻訳オブジェクトから開始できません。Textエンティティからクエリを開始した場合...最初にすべての言語を取得せずに1つの言語のみを選択するにはどうすればよいですか。
私はここで迷子になっています...スマートな方法はありますか...データベースにすべてのテキストをクエリする必要はありません...次に各アイテムをクエリします...翻訳があるかどうかを確認しますか?または、新しい空のものを作成します。
SQLでは、次のようにします。
上記のSQLは、現在レコードがない場合でも要素を提供します。これらの値に対してNULLを取得します。その後、それを自分のコードで処理し、遅延読み込みを回避できます。
しかし、EntityFrameworkで同じ動作を得ることができますか?EF4がマッピングを行うのに問題があることがわかりました...TextDesciptionsからTextsに移行しているので...そしてTextDesciptionsにはテキストのリストがあります...しかしここでは...どちらか1つだけが必要ですまたはNULL、またはデータベースにまだ追加されていない新しいエンティティ。
いくつかの興味深い答えを楽しみにしています。
mvh
entity-framework-4 - 最初にEF4コードでテーブルを複数のタイプに分割するにはどうすればよいですか?
私はEF4、CTP5でコードファーストPOCOを使用しています。多数の列 (100 以上) を含むテーブルがあります。基本的な情報が必要になるたびにすべてのデータを取得する必要がないように、テーブルを複数のタイプ (別名「テーブル分割」) に分割したいと考えています。
Google を使用してこれに関するドキュメントを見つけることができないようです。「テーブル分割」という概念への参照を見つけました。また、EDMX ファイルを使用してそれを行う方法も見ましたが、コード ファーストのサンプルはありません。
別のエンティティタイプを定義して、他のナビゲーションプロパティと同じように関連付けるだけで簡単になることを望んでいました...
そして、私はそれをこのように呼びます...
残念ながら、これは機能していないようです。これを行うと、次のエラーが発生します...
User.Details プロパティを削除するとエラーは解消されますが、EF4 の気の利いたナビゲーション機能を使用できません。
linq - LINQ EntityFramework4でこのSQLを作成するにはどうすればよいですか
中央のテーブルにはPersonIDとEffectiveDateがあり、複数のレコードには同じPersonIDがありますが、EffectiveDatesが異なります。各PersonIDについて、最新の1つのレコードを返そうとしています。
理想的には、これをlinqでIQueryableとして表現して、より大きなクエリを作成できるようにします。
asp.net-mvc - MVC および EF4 CTP モデル バインディングと階層モデルの保存
Stack Overflow と Google を検索するときに、状況に対する明確な答えを見つけるのに苦労しています。うまくいけば、誰かが私を正しい方向に向けることができます。
私の状況 ASP.NET MVC 3 および Entity Framework 4 CTP (コードファースト) を使用して、単一の編集フォーム (単一のビュー内) を使用して、3 レベルの深さの階層エンティティを更新できるようにしたいと考えています。多くのサービス オプションを持つことができるサービスは、多くのインベントリ アイテムを持つことができます。
MVC の既定のモデル バインダーを (TryUpdateModel 経由で) 使用できることを期待していました。
- 既存の「サービス」レコードを更新する
- 投稿された値に応じて、「サービス オプション」レコード (サービスに添付) を追加/更新/削除します。
- 投稿された値に応じて、「在庫」レコード (各サービス オプションに添付) を追加/更新/削除します。
私のモデル
理想的なコントローラーの方法:
このユートピアの夢を実現する方法はありますか、それとも間違った木を吠えていますか? 別のテクノロジー (通常の EF4、Automapper など) を使用することにオープンです。
前もって感謝します!
entity-framework-4 - EF4 CTP5 - HasColumnType が機能しない
文字列列の 1 つの既定の nvarchar(4000) を SQL Express のテキスト データ型にオーバーライドしたいと考えています。私はこのコードを使用します。
しかし、列の型は nvarchar のままですか?
c# - Entity Framework 4: Code First - 別のスキーマでデータベースを作成しますか? MapSingleType?
データベースがあり、2 つの異なるスキーマを使用しています。スキーマは名前空間のようなものです (間違っていたら訂正してください)。このようにして、1 つのデータベースと現在 2 つのスキーマがあるため、1 つのスキーマのテーブルは別のスキーマにあるため、他のスキーマのテーブルと同じ名前を付けることができます。
既定のスキーマではなく、別のスキーマと通信するように最初に EF Code を取得するにはどうすればよいですか?
それは MapSingleType とメソッドのオーバーライドと関係がありますか、それとも何か他のことをすることができますか?