問題タブ [dbcontext]

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

sql - Entity Frameworkを使用して1つのフィールドのみを更新する方法は?

これがテーブルです

ユーザー

そしてコード..

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

entity-framework - 私は何を見逃していますか?(この EntitySet には、同じ ID を持つエンティティが既に存在します。)

エンティティ フレームワーク シナリオで DTO とコンバーターを使用しています。エンティティを更新したい。だから私はこのステートメントを入れます: databasecontext.Tablename(s).Attach(entityobj); ここに来るたびに、プログラムはこのエラーで終了します: An entity with the same identity already exists in this EntitySet.

databasecontext.Tablename(s).Detach(entityobj); もう一度アタッチに電話する前に言うことで、これを回避できると感じまし た。しかし、プログラムは依然として Attach ステートメントで失敗します。

私は何が欠けていますか?ドメイン サービスで Update を呼び出す DB コンテキストのメソッドはどれですか?

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

asp.net-mvc - 一体何がコンテキストですか?

どこを見てもコンテキストが見え始めています。ASP.NET MVCには、ControllerContexts、RequestContexts、HttpContexts、FormContextsがあります。Entity Frameworkには、ObjectContextsとDbContextsがあります。NinjectにはNinject.Activation.IContextがあります。

一体何がコンテキストですか?

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

entity-framework - EF Code First DBContext とトランザクション

でトランザクションを実装する最善の方法を教えてDBContextください。特に、

  1. DbContext.SaveChanges複数のエンティティを変更した場合、トランザクションは内部的に実装されますか?
  2. 複数回呼び出したい場合DbContext.SaveChanges(同じ contxet/異なる contxets)、どのようにトランザクションを達成できますか?
0 投票する
15 に答える
185473 参照

c# - DbContextとSetInitializerを使用してdatetime2の範囲外の変換エラーを修正するにはどうすればよいですか?

EntityFramework4.1で導入されたDbContextおよびCodeFirstAPIを使用しています。

データモデルstringは、やなどの基本的なデータ型を使用しますDateTime。場合によっては使用している唯一のデータ注釈はですが[Required]、それはどのDateTimeプロパティにもありません。例:

DbContextサブクラスも単純で、次のようになります。

イニシャライザは、モデルの日付を今年または来年の適切な値に設定します。

ただし、初期化子を実行すると、次の場所でこのエラーが発生しcontext.SaveChanges()ます。

datetime2データ型をdatetimeデータ型に変換すると、値が範囲外になりました。ステートメントは終了されました。

すべてがとても単純なので、なぜこれが起こっているのかまったくわかりません。編集するedmxファイルがないため、修正方法もわかりません。

何か案は?

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

c# - EFDbContextおよびNinject

しばらく前に、エンティティの2つのコレクションを結合したときに、デフォルトの等式比較機能が機能しないように見える理由について質問しました。

EFコードファースト-LinqtoEntities Union EqualityComparer

答えは、DbContextの2つの異なるインスタンスを使用していたため、参照が異なるという事実によるものでした。

そのため、リクエスト全体でDbContentを共有しようとしています。「複雑な」例がいくつかありますが、もっと簡単な解決策を試してみようと思いました。

そこで、エンティティの概要を示すIDbContextインターフェイスを作成しました

次に、私のDbContextは次のように実装されます。

次に、2つのリポジトリ(NewsRepositoryとCategoryRespository)に、コンストラクターパラメーターとしてIDbContextがあります。

では、リクエストスコープでIDbContextをSiteContextにバインドすると、リポジトリが同じコンテキストを共有すると仮定しますか?

ただし、前の質問からユニオンを再試行すると、まだ重複するエンティティが表示されます。私が間違っていることは何ですか?1つのリクエストで同じコンテキストを確実に使用しているかどうかを確認するにはどうすればよいですか?

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

entity-framework - EF 4.1でdbcontextエンティティを介してForeachするにはどうすればよいですか?

ASP.NET Entity Framework 4.1 MVC 3(C#)を使用しています

DbContext内のすべてのエンティティを介してforeachしたいと思います。動的ビューを作成するには、エンティティを動的に参照できる必要があります。

Lermanの本、2冊のMVC(2&3)の本、msdn、asp.netなどを読んだことがあります。何かが足りないのではないでしょうか。

エンティティにアクセスするには、ObjectContextを使用する必要があるようです。それが正しい方法であるならば、私は確かにそれをする方法を理解することができません。助けてください。ありがとうございました。

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

c# - ObjectContext で使用できない DbContext 関数はありますか?

Microsoft には、DbContext 機能について説明した紹介記事があります。

それらのいくつかは、ObjectContext で見たことのない関連エンティティのフィルタリングなどです。

その機能は本当に DbContext にとって新しく、ObjectContext では利用できないのでしょうか? 他の「新しい」機能は何ですか? それとも、DbContext は ObjectContext と同じ機能を単純化した API に過ぎないのでしょうか?

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

validation - Entity Framework IValidatableObject 参照 DbContext

EF 4.1 をリポジトリ、UnitOfWork、EF からのエンティティの分離、および検証と連携させようとしています。

このガイドに従って、POCO エンティティを EF モデルから適切に分離しました。現在、このガイドに従って検証を実装しています (IValidatableObject を使用)。

私のソリューションは次のもので構成されています。

  • Contacts.Repository [EF と Contacts.Entities を参照]:
    • 連絡先.edmx
    • ContactsDbContext.cs
  • Contacts.Entities [参照なし]:
    • Contact.cs (Contacts.Entities.Contact 部分クラス)
  • Contacts.Validation [Contacts.Entities と Contacts.Repository を参照]
    • Contact.cs (Contacts.Entities.Contact 部分クラス)

しかし、私は検証でレンガの壁にぶつかっています:

  1. Contacts.Repository との循環参照が発生するため、Contacts.Entities に検証ロジックを追加できません (contact.Validate(...) は ContactsDbContext を使用する必要があります)。そこで、別の Contacts.Validation プロジェクトを作成しました。
  2. ただし、これは Contact クラスを部分クラスに分割して、Contacts.Entities と Contacts.Validation の両方で Contact を定義することを意味します。異なるアセンブリ間で部分クラスを定義できないため、コードはコンパイルされなくなります。

ここで誰かが私に何かポインタを持っていますか? 私は以下のコードを投稿しました...

Contacts.Repository.ContactsDbContext.cs:

Contacts.Entities.Contact.cs:

Contacts.Validation.Contact.cs には以下が含まれます。