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

c# - 列をdbのIDENTITYにマップします

ID列にをマークしましたが.Identity()、生成されたデータベーススキーマがtrueに設定されていないためIDENTITY、レコードを追加するときに問題が発生します。(SQL Management Studioで)データベーススキーマを手動で編集してId列にマークを付けるとIDENTITY、すべてが希望どおりに機能します。EFにそれを単独で実行させることはできません。

これは私の完全なマッピングです:

EFを使用して統合テスト用のデータベースを構築および再構築しているので、これを自動的に実行する必要があります...

編集: うーん...コメントで、これを実行するのに十分なコードを提供するように要求されたので、コードをコンソールアプリにカットアンドペーストして(すべてのクラスが必要になるわけではありません...)、突然それを実行しましたちょうど働いた。どこにあるのかわからなかったのですが、どこかでメソッド呼び出しを忘れていたのではないでしょうか。

他の誰かが探しに来た場合に備えて、この投稿への回答で実用的なソリューションコードを投稿します。

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

.net - EF4データベースの生成

私は、基本的な「モデルファースト」エンティティフレームワークの例を作成する最も簡単な方法を見つけるために一生懸命努力しています。ただし、実際のデータベースの生成、特にデータベースに対するSQLの実行に苦労しています。

ツール

  • Visual Studio 2010
  • SQL Server 2008 Express

プロセス

  1. 新しいクラスプロジェクトを作成する
  2. 「Database1.mdf」という名前の新しいサーバーデータベースアイテム(mdf)をプロジェクトに追加します
  3. 空のADO.netエンティティモデルを追加します
  4. 単純なエンティティを作成します(個人:ID、名前)
  5. VisualStudioによって作成されたDatabase1接続を選択してスクリプトを生成します
  6. スクリプトエディタを右クリックして、[SQLの実行...]オプションを選択します
  7. SQLEXPRESSにログインします

これは、データベース名「Database1」が見つからないと言って転倒する場所です。

「問題」は、SQLサーバーにDatabase1が接続されていないことです。Visual Studioが新しいデータベースを作成したときにデータベースをSQLExpressに接続するために使用することを100%確信しています(ステップ2)。これはもはや当てはまらないようです(VS2010のベータ版でさえそうしました)。誰かがこれを確認できますか?またはこれを実現する方法を教えてください。

接続されていないデータベースを使用するようにTSQLスクリプトを変更する方法はありますか?つまり、ファイルです。

SQL Management Studioまたはsqlcmdを使用してデータベースを接続できることはわかっていますが、Visual Studioを使用する最もクリーンな方法を見たいので、ソリューションを避けたいと思います。

理想的なソリューション(最も好ましい順に)

  1. Visual Studioを入手して、新しく作成したデータベースを接続します
  2. 生成されたSQLをファイルを指すように変更します

前もって感謝します。

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

.net - Entity Framework 4 と SQL Server Express ファイル

標準の SQL Server データベースで VS2010 でモデル優先の方法で EF を使用すると、生成された DDL をデータベースに簡単に適用できることがわかります。.mdf ファイル (SQL Server Express ファイル) でこれを行う簡単な方法はありますか

前もって感謝します。

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

.net - EF Model First の設計にインデックスを追加する

Entity Framework (4) を使用してモデルを最初に設計するオプションが気に入っています。ただし、主キー以外に追加のインデックスをテーブルに追加する方法を見つけることができませんでした。

これはビジュアルデザイナーで可能ですか? または、データベースの作成後に手動でインデックスを追加する必要がありますか (これはデザイナーの欠点になります)。

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

c# - コード生成 - ドメイン/モデル優先 (DDD)

DDD またはモデル ファースト アプローチに基づくコード生成の「完全な」ソリューションを探しています。理想的には、これは個別のアプリケーションまたは VS プラグインであり、カスタム ビジネス ロジックも保持しながら、標準的な配管コードをできるだけ多く生成するために使用および再利用できます。

WCF サービス アプリ、データ レイヤー、エンティティ モデルなどを含む VS プロジェクトと、足場を備えた ASP.MVC (および/または Web フォーム) サイト、Windows クライアントなどのクライアント アプリケーションを生成したいと考えています。

Entity Framework と NHibernate、S#ahrp Architecture などのオープンソース フレームワーク、商用製品など、多くの選択肢があることは知っています。ほとんどの投資が間に合うことを知っているので、私は何に対してもオープンです。

更新: これに追加するには: Entity Framework (4.0) は、C# ビジネス クラスとデータベース スキーマを生成するため、大きな前進であり、「モデル」に集中できます。これは良いことです。ある種の(メタ)モデルに基づいて他のオブジェクトを生成できるようにするために、1 レベル高くなるものはありますか。

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

c# - EF でのモデル ファースト vs データ ファースト

新しいプロジェクトにはどれを選択すればよいですか? データ ファースト モデルが DB パフォーマンスを向上させ、モデル ファースト モデルが OOP 処理を向上させると仮定できますか?

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

c# - 保存時にEntity Framework 4のEntityのModifiedプロパティを自動更新する方法は?

VS2010、POCO、モデルファーストのアプローチでEF4を使用しています。

私のエンティティには、Id:Guid、Name:String、Created:DateTime、Modified:DateTime、Revision:Int32 というプロパティがあります。

エンティティを作成し、名前を設定して、EF4 コンテキストを使用してデータベースに保存します。これにより、Id が新しい Guid に設定され (Identity-SGP で動作)、Created が now に設定され、Modified が null のままになり、Revision が 0 に設定されます。エンティティを取得し、名前を変更して再度保存します。今回は Modified-value を now に設定し、revision を 1 にする必要があります。

EDMX デザイナーで EF4 を使用してこれを達成するにはどうすればよいですか?

アップデート:

これは私が最終的に使用したものです:

どちらが機能していません... :(

問題は、MarkAsModified() メソッドを明示的に実行しても、entry.State がまだ変更されていないことです。私はこれを取得しません...

デフォルトで変更追跡が有効になっていないのはなぜですか? 自己追跡エンティティを使用しているのに、なぜそれをオフにして、毎回明示的にオンにする必要があるのでしょうか? また、状態が変更されていない場合でも、エンティティがデータベースに永続化されるのはなぜですか? EntityState と ObjectState の違いは何ですか? 現時点では、サーバー側ですべての変更と更新を行っていますが、WCF サービスを使用して、後でエンティティを前後に転送する予定です...ここでの変更の処理方法に違いはありますか? 変更追跡のオン/オフに関係なく、サーバー側のすべての変更が永続化される場合?? 私が望むのは、Modified、Revision などを更新せずに何も格納できないようにすることです。これらのプロパティは、オブジェクトが返されて変更されたときに、常にサーバーで設定する必要があります。(ここではSQLサーバー側ではなく、サービスサーバー側について話しています)

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

.net - Model First データベース ジェネレーターで Visual Studio がフリーズする

私は Entity Framework を初めて使用します。これが発生するとは想定されていないことはわかっていますが、コミュニティで既知の問題である可能性があるため、質問したいと思いました。

2 つのエンティティでモデルを作成しました。データベース テーブルを作成しようとしたときに、Visual Studio がフリーズしました。私は自分でスクリプトを実行しましたが、null 値を取るように属性を変更する必要がありました。また、新しいモデルをデータベースに影響を与えることができません。

私は運がないアップグレードか何かを探しました。誰かがそのようなことを経験していますか?

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

.net - Entity Designer Database Generation Power Pack は、ProviderManifestToken = 2008 の datetime2 ではなく datetime を生成します

「Entity Designer Database Generation Power Pack」アドオンを使用した EDMX からの DDL 生成に問題があります。ProviderManifestToken が 2008 に設定されていても、datetime2 ではなく datetime-columns を生成します。修正できますか? モデルファーストアプローチを使用しているため、これを常に手動で行いたくありません...

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

.net - EF4 で最初にモデルを使用して作成されたテーブルにテーブル プレフィックスを追加するにはどうすればよいですか?

私のクライアントには、すべてのテーブルにアプリケーション固有のプレフィックス (「myapp_」など) を付ける必要がある db テーブルの命名規則があります。モデルの最初のアプローチで EF4 を使用しています。

カスタム db 名前空間を指定できますが、彼らはこのアプリに新しい名前空間を導入したくありません。他のアプリは dbo 以外の名前空間を使用していません。

私は t4 テンプレートをカスタマイズする道をたどりましたが、実行時に EF が必要とする 3 つのメタデータ ファイルを生成するときに、ワークフローがどの t4 テンプレートを使用する必要があるかを指定できませんでした。

EF を使用してテーブル プレフィックスの要件を達成するための推奨される方法はありますか?