タグ付けされた質問 「entity-framework」

ADO.NET Entity Framework、.NET Framework用のObject-Relational-Mapping(ORM)ツールに関する質問。該当する場合は、バージョン固有のタグを追加してください。Entity-Framework-coreの質問には、このタグを使用しないでください。代わりにentity-framework-coreを使用してください。

30
MSSQLエラー '基になるプロバイダーが開くときに失敗しました'
私が使っていた.mdfに接続するためdatabaseとentityClient。次に、接続文字列を変更して、.mdfファイルがないようにします。 次はconnectionString正しいですか? <connectionStrings> <!--<add name="conString" connectionString="metadata=res://*/conString.csdl|res://*/conString.ssdl|res://*/conString.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.\SQL2008;AttachDbFilename=|DataDirectory|\NData.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />--> <add name="conString" connectionString="metadata=res://*/conString.csdl|res://*/conString.ssdl|res://*/conString.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.\SQL2008;Initial Catalog=NData;Integrated Security=True;Connect Timeout=30;User Instance=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" /> 私はいつもエラーが出るので: 基になるプロバイダーがOpenに失敗しました

9
DbEntityValidationException-エラーの原因を簡単に確認するにはどうすればよいですか?
Entity Frameworkを使用するプロジェクトがあります。呼び出している間SaveChanges、私にDbContext、私は次の例外を取得します: System.Data.Entity.Validation.DbEntityValidationException:1つ以上のエンティティの検証に失敗しました。詳細については、「EntityValidationErrors」プロパティを参照してください。 これはすべて順調ですが、この例外が発生するたびにデバッガをアタッチしたくありません。さらに、実稼働環境ではデバッガーを簡単に接続できないため、これらのエラーを再現するにはかなりの時間を費やす必要があります。 内に隠されている詳細を確認するにはどうすればよいDbEntityValidationExceptionですか?

12
エンティティフレームワーク:1つのデータベース、複数のDbContexts。これは悪い考えですか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 先月休業。 この質問を改善する これまでの私の印象DbContextは、はデータベースを表すことを目的としているため、アプリケーションが1つのデータベースを使用する場合は、1つだけが必要だと考えていましたDbContext。 ただし、一部の同僚は、機能領域を個別のDbContextクラスに分割したいと考えています。 これは良い場所から来ていると思います-コードをよりクリーンに保ちたいという願望-が不安定なようです。私の腸はそれが悪い考えだと私に言っていますが、残念ながら、私の腸の感覚は設計決定のための十分な条件ではありません。 だから私は探しています: A)これが悪い考えである理由の具体例; B)これがすべてうまくいくという保証。


4
ASP.NET Identity DbContextの混乱
デフォルトのMVC 5アプリには、IdentityModels.csに次のコードが含まれています。このコードは、デフォルトテンプレートのすべてのASP.NET Identity操作用です。 public class ApplicationDbContext : IdentityDbContext<ApplicationUser> { public ApplicationDbContext() : base("DefaultConnection") { } } Entity Frameworkのビューを使用して新しいコントローラーを足場し、ダイアログで「新しいデータコンテキスト...」を作成すると、これが生成されます。 using System; using System.Collections.Generic; using System.Data.Entity; using System.Linq; using System.Web; namespace WebApplication1.Models { public class AllTheOtherStuffDbContext : DbContext { // You can add custom code to this file. Changes will not be …


8
マテリアライズド値がnullであるため、値タイプ 'Int32'へのキャストは失敗しました
次のコードがあります。エラーが発生します: 「値の型 'Int32'へのキャストは、実体化された値がnullであるため失敗しました。結果の型のジェネリックパラメーターまたはクエリでnull可能な型を使用する必要があります。」 CreditHistoryテーブルにレコードがない場合。 var creditsSum = (from u in context.User join ch in context.CreditHistory on u.ID equals ch.UserID where u.ID == userID select ch.Amount).Sum(); null値を受け入れるようにクエリを変更するにはどうすればよいですか?

19
1つ以上の外部キープロパティがnull可能ではないため、関係を変更できませんでした
エンティティでGetById()を実行し、子エンティティのコレクションをMVCビューからの新しいリストに設定すると、このエラーが発生します。 操作が失敗しました:1つ以上の外部キープロパティがnull可能ではないため、関係を変更できませんでした。リレーションシップが変更されると、関連する外部キープロパティはnull値に設定されます。外部キーがnull値をサポートしていない場合は、新しい関係を定義するか、foreign-keyプロパティに別のnull以外の値を割り当てるか、無関係なオブジェクトを削除する必要があります。 私はこの行を完全に理解していません: 1つ以上の外部キープロパティがnull可能ではないため、関係を変更できませんでした。 2つのエンティティ間の関係を変更するのはなぜですか?アプリケーション全体の存続期間を通して、同じままである必要があります。 例外が発生するコードは、コレクション内の変更された子クラスを既存の親クラスに割り当てるだけです。これにより、子クラスの削除、新しいクラスの追加、変更が可能になります。Entity Frameworkがこれを処理すると思ったでしょう。 コード行は、次のように抽出できます。 var thisParent = _repo.GetById(1); thisParent.ChildItems = modifiedParent.ChildItems(); _repo.Save();

6
Fluent APIで一意の制約を設定しますか?
私は、コードファーストでEFエンティティを構築し、EntityTypeConfiguration流暢なAPIを使用しようとしています。主キーの作成は簡単ですが、一意制約を使用すると簡単ではありません。このためにネイティブSQLコマンドの実行を提案する古い投稿を見ていましたが、それでは目的が達成されないようです。これはEF6で可能ですか?

6
DbValidationExceptionから正確なエラータイプを取得する
EF 4.1のDatabaseInitializer()でモデルを初期化しているときに、この厄介なエラーが発生するという状況になっている"Validation failed for one or more entities. See 'EntityValidationErrors' property for more details."ので、このEntityValidationErrorsに移動すると、{System.Data.Entity.Validation.DbEntityValidationResult}初期化できなかったフィールドに関する情報がまったくないフィールドがあります。 。このエラーに関する詳細情報を取得する方法はありますか? 物事を片付けるには: 文字列の長さの問題を解決する方法を知っています。私が求めているのは、モデルを壊している正確なフィールド名を取得する方法です。

12
Entity Framework 4 / POCO-どこから始めますか?[閉まっている]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 6年前休業。 この質問を改善する 私はしばらくプログラミングをしていて、以前にLINQ-To-SQLおよびLINQ-To-Entitiesを使用していました(ただし、エンティティを使用する場合は、エンティティ/テーブル1-1の関係にあります。つまり、L2SQLとそれほど変わりません)。 私は、制御の反転、作業単位、POCO、およびリポジトリー・パターンについて多くの読書をしてきましたが、この方法論を新しいアプリケーションで使用したいと考えています。 私が苦労しているのは、EF1の知識を前提としない、EF4の明確で簡潔な初心者向けガイドを見つけることです。 私が答える必要がある具体的な質問は次のとおりです。 最初にコード/モデルを最初に?EF4に関する長所/短所(つまり、最初にコードを実行し、後でコードを変更し、DBモデルを再生成する必要がある場合はどうなりますか?データは保持され、変換または削除されますか?) 私がコードファーストになると仮定して(EF4がそれをDBスキーマに変換する方法を確認したいのですが)、実際にどのように開始しますか?エンティティダイアグラムに「これがエンティティモデルなので、次に移動します...」という記事をよく目にします-残念ながら、デザイナーでモデルを作成して保存したかどうかは不明ですコードを生成し、それ以降の自動コード生成を停止しました-または-コード化しました(POCO)?クラスとどういうわけかそれらをdeisgnerビューにインポートしましたか? 私が本当に必要なのは、「魔法」がどこから来ているのか、そしてDBから直接EFモデルを生成するだけではない場合、自分で追加する方法を理解することだと思います。 質問が少し漠然としていることは承知していますが、わからないことはわかりません。入力、修正、説明はありがたいです。 言うまでもなく、誰もここに座ってEFを教えてくれるとは思っていません。良いチュートリアル、フォーラム、ブログなどが欲しいです。完全なエンティティ初心者向け

6
ソースコレクションが空のときにLINQ Sum()を強制的に0に戻す方法
基本的に次のクエリを実行すると、一致するリードがない場合、次のクエリは例外をスローします。その場合、例外がスローされるのではなく、合計が0になるようにします。これはクエリ自体で可能でしょうquery.Any()か?クエリを保存してチェックするのではなく? double earnings = db.Leads.Where(l => l.Date.Day == date.Day && l.Date.Month == date.Month && l.Date.Year == date.Year && l.Property.Type == ProtectedPropertyType.Password && l.Property.PropertyId == PropertyId).Sum(l => l.Amount);

4
.ToList()、. AsEnumerable()、AsQueryable()の違いは何ですか?
LINQ to EntitiesとLINQ to Objectsの最初の実装IQueryableと2番目の実装の違いがいくつかわかってIEnumerableおり、質問のスコープはEF 5内にあります。 私の質問は、これらの3つの方法の技術的な違いは何ですか?私は多くの状況でそれらすべてが機能することを確認します。のようにそれらを組み合わせて使用​​することもわかり.ToList().AsQueryable()ます。 これらの方法は正確にはどういう意味ですか? パフォーマンスの問題など、どちらか一方をもう一方に使用することにつながるものはありますか? .ToList().AsQueryable()代わりに、例えば、なぜ代わりに使うの.AsQueryable()でしょうか?

9
「ステートメント本体を持つラムダ式は式ツリーに変換できません」
EntityFrameworkを使用A lambda expression with a statement body cannot be converted to an expression treeすると、次のコードをコンパイルしようとするとエラー「」が発生します。 Obj[] myArray = objects.Select(o => { var someLocalVar = o.someVar; return new Obj() { Var1 = someLocalVar, Var2 = o.var2 }; }).ToArray(); エラーが何を意味するのか、そして何よりもそれを修正する方法がわかりません。何か助け?


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.