問題タブ [ctp4]

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 投票する
0 に答える
551 参照

entity-framework - Entity Framework Code First CTP4 を使用して、エンティティを複数のテーブルにマップする方法は?

CTP4 と Code First を使用して、(2 つのテーブル間の 1 対 1 の関係を使用して) 1 つのエンティティを 2 つのテーブルにマップすることは可能ですか?

もしそうなら、どのように?

MSDN: 「方法: 2 つのテーブルにマップされた単一のエンティティを持つモデルを定義する」http://msdn.microsoft.com/en-us/library/bb896233.aspx

関連: 2 つのテーブルから 1 つのエンティティへのデータのマッピング - Entity Framework 4

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

.net - Code First CTP4: これら 2 つのエンティティをマップする方法

Team と Match という 2 つのエンティティがあるとします。各試合には、ホームチームとアウェイチームの 2 つのチームがあります。チームは多くの試合を持つことができますが、ホームチームとアウェイチームはそれぞれ 1 つのチームしか持つことができません。チームがホームチームである場合もあれば、同じチームがアウェイチームである場合もあります。各クラスの基本のみを提供しました。

これをどのようにマッピングできますか?試してみました (ICollection Matches を設定してマップしようとしましたが、HomeTeam と AwayTeam は同じ逆の関係 (そのようなもの) を持つことはできません)。

ありがとう。

0 投票する
6 に答える
14548 参照

entity-framework - Entity FrameworkCTP4-コードファーストカスタムデータベースイニシャライザー

カスタムデータベース初期化戦略を実装して、データベーススキーマを生成し、提供されたユーザーIDとパスワードを使用して既存の空のSQLデータベースに適用できるようにしたいと思います。

残念ながら、組み込みの戦略では、私が探しているものが提供されません。

私は次のことを解決しましたが、これではModelHashが作成されないため、「context.Database.ModelMatchesDatabase()」を使用してデータベーススキーマが作成されたことを検証し、複数の初期化を防ぐことができません。

質問:

モデルハッシュを取得/作成する方法を知っている人はいますか?(これはEdmMetadataエンティティです)

-または-

コードファーストCTPを使用してこれを一般的に行うためのより良い方法はありますか?

0 投票する
4 に答える
8822 参照

c# - Entity Framework Code First CTP4 デフォルト列値?

私は Entity Framework CTP4 で Code First を検討しており、ModelBuilder を使用してテーブルの列を作成できます。ModelBuilder またはその他のメカニズムを使用して、データベース内の列のデフォルト値を設定する方法はありますか?

ありがとう!

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

.net - Code First CTP4: 主キーのないテーブル?

Entity Framework と Code First では、主キーのないテーブルを作成して使用することはできますか? このセットアップを機能させることができません:

ReportChanges で主キーの割り当てを除外したことに注意してください。しかし、このセットアップでは、「エンティティ タイプ 'ReportChanges ' のキーを推測できません」というメッセージが表示されます。

何か不足しているか、Code First が主キーのないテーブルをサポートしていません。何が正しいですか?ありがとう。

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

entity-framework - コードのみの CTP4 でビューを事前に生成する方法は?

CTP 4 とコードのみ (.edmx モデル ファイルなし) を使用すると、パフォーマンスの問題が発生します。

コードのみと CTP 4 を使用する場合、「ビュー」を事前に生成することは可能ですか?

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

c# - オブジェクト コンテキスト (EF4/CTP4) をスレッド セーフにしますか?

ASP.NET 4 のプロジェクトにエンティティ フレームワーク 4 - CTP 4 の最新リリースを使用しています。このアプローチには時間がかかるという欠点があるため、アプリケーションの起動時に一度ビルドします。ただし、多くの記事で、オブジェクト コンテキストのシングルトン オブジェクトを作成するのは賢明ではないかもしれないと読みました。したがって、セッションごとに小さなコンテキストインスタンスを維持したいと考えています。

私の質問は次のとおりです。 1. オブジェクト コンテキストを複数のセッションで共有することをお勧めしますか? 2. セッションごとに 1 つのインスタンスが必要な場合、一度ビルドしてそのインスタンスを複数のセッションで使用できますか? 3. セッション間で共有されている場合、どうすれば並行性/コミットを維持できますか?

ありがとう。

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

entity-framework-4 - context.SaveChanges を呼び出すときの EF CTP4

私は、EF CTP4 の NHibernate で使用するプラクティスの多くを複製しようとしています。

現在、一般的なリポジトリ インターフェイスがあります (CTP4 では、DbContext.Set を使用してこれを簡単に行うことができます)。

コンテキストを渡し、StructureMap を使用して HttpRequest ごとにスコープを設定しています。

NHibernate では、ISession (再び StructureMap を使用して作成) を渡しますが、ActionFilter (UnitOfWork) を使用して、リクエストの最後にトランザクションをコミットします。

EF CTP4 に同等のトランザクションはありますか? そうでない場合は、同じフィルターを使用して context.SaveChanges() を呼び出すか、リポジトリ内でこれを行う必要があります。

余談ですが、エンティティが新しいかどうかをテストする最も簡単な方法は何ですか。NH では、ISession.SaveOrUpdate を呼び出すだけで十分です。すべてのエンティティが Guid 識別子を使用していることに注意してください。おそらくデフォルト(Guid)のチェックですか?

ありがとう。

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

entity-framework-4 - SQL CE 4 System.Transaction サポート

同様の質問がここで尋ねられましたが、回答がありませんでした。

EF CTP4 および SQL CE 4 で System.Transactions.CommittableTransaction を使用しようとしています。

ASP.NET MVC コントローラー アクション用に次のトランザクション属性を作成しました。

このフィルターを使用すると、次のエラーが表示されます。

System.InvalidOperationException: 接続オブジェクトをトランザクション スコープに登録できません。

ただし、次のテストはパスします。

これは、DbContext を初期化する方法と関係がありますか?

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

database-design - CTP4 Code First を使用した EF4 の TPH 識別子としての外部キー

私のモデルを要約するには:

  • ライセンスと証明書は資格の子です
  • Qualification には 1 つだけの専門職があります
  • 職業は、認可された種類 (タイプ 1) または認定された種類 (タイプ 2) のいずれかです。

要件: データベース スキーマに冗長性を導入することなく、ビジネス エンティティ間の関係を表現します。資格の種類 (ライセンス/証明書) は、職業の種類と一致する必要があります。

これが現在の私の簡略化されたモデルです。これが機能しない理由を以下で説明します。

簡略化した ModelBuilder は次のとおりです。

これが機能しない理由は、EF4がFK プロパティを TPH 識別子として兼用することを許可していないためです。これは、Type を識別子と外部キー フィールドの両方にすることはできないことを意味します。各エンティティの HasConstraint メソッドで職業タイプをハードコーディングしようとしても機能しません。これにより、例外が生成されます。

可能な解決策は、Profession に代理キーを追加し、Qualification の Type プロパティを取り除き、ProfessionId FK に置き換えることです。これにより、冗長性の懸念が取り除かれますが、TPH も破壊されます。実際には、弁別子は資格から専門職に移動します。ここでの問題は、License オブジェクトと Certificate オブジェクトをマップする方法がわからなかったことです。代わりにビューにマップできますか?しかし、Code First でそれを行うにはどうすればよいでしょうか。

ですから、今、私は多くの好ましくない選択に直面しています。助言がありますか?