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

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


7
最後のAdd-Migrationコマンドを元に戻すにはどうすればよいですか?
Add-Migrationコマンドを使用して移行を作成しましたが、その移行の名前を変更したいと思います。移行コマンドを元に戻して、新しい目的の名前を使用して再生成できるようにするにはどうすればよいですか? 生成されたファイルを削除するだけの問題ですか、それともこれは悪い考えかもしれませんか?

6
Linq to Entityで最大IDを取得するにはどうすればよいですか?
ID列を持つテーブルUserがありUserIDますが、最大値を返す正しいLinq to Entityコード行はUserID何ですか? 私はもう試した: using (MyDBEntities db = new MyDBEntities()) { var User = db.Users.Last(); // or var User = db.Users.Max(); return user.UserID; } しかしLast、Maxサポートされていないようです。 何か案は?

5
新しいDbContext()をいつ作成する必要がありますか
私は現在DbContextこれに似たものを使用しています: namespace Models { public class ContextDB: DbContext { public DbSet<User> Users { get; set; } public DbSet<UserRole> UserRoles { get; set; } public ContextDB() { } } } 次に、データベースへのアクセスが必要なすべてのコントローラーの上部にある次の行を使用しています。また、ユーザーに関連するすべてのメソッド(アクティブなユーザーの取得、ユーザーの役割の確認など)を含むUserRepositoryクラスでも使用しています。 ContextDB _db = new ContextDB(); これについて考えると、1人の訪問者が複数のDbContextをアクティブにできる場合があります。彼がUserRepositoryを使用するコントローラーにアクセスしている場合、これは最善のアイデアではない可能性があります。いくつか質問があります。 いつ新しいDbContextを作成する必要がありますか/渡すグローバルコンテキストを1つ持つ必要がありますか? すべての場所で再利用する1つのグローバルコンテキストを持つことはできますか? これによりパフォーマンスが低下しますか? 他のみんなはどうやってこれをやっていますか?

8
エンティティフレームワークコードの最初の日付フィールドの作成
Entity Framework CodeFirstメソッドを使用してデータベーステーブルを作成しています。次のコードはDATETIMEデータベースにDATE列を作成しますが、列を作成したいと思います。 [DataType(DataType.Date)] [DisplayFormatAttribute(ApplyFormatInEditMode = true, DataFormatString = "{0:d}")] public DateTime ReportDate { get; set; } DATEテーブルの作成中に、タイプの列を作成するにはどうすればよいですか?

4
最初にEFコードのCTP5に対してProxyCreationEnabledをオフにすることの欠点は何ですか
私のWCFサービスがコードファーストモデルからクラスを返すことができる唯一の方法は、以下のコードProxyCreationEnableをfalse使用するようにを設定することです。 ((IObjectContextAdapter)MyDb).ObjectContext.ContextOptions.ProxyCreationEnable = false; これを行うことの悪影響は何ですか?1つの利点は、少なくともこれらの動的タイプをシリアル化して、WCFを使用してネットワーク経由で送信できることです。

9
さまざまなデータベースのEntityFrameworkプロバイダーのリスト
どのプロバイダーがあり、それらを使用した経験 そこにある可能性のあるすべてのネイティブ.NETFramework Entity Frameworkプロバイダーと、デフォルトのLINQ2Entities(MS for MS SQL)と比較した制限について知りたいです。同じデータベースにもっと良いものがあれば。教えてください。このリストでこの投稿を更新します。 この投稿に直接プロバイダーを追加するか、回答を提供してください。他の人(私を含む)がリストに追加します。 エンティティフレームワーク1 Microsoft SQL Server Standard / Enterprise / Express Linq2エンティティ-MicrosoftSQLServerコネクタ DataDirectADO.NETデータプロバイダー Microsoft SQL Server CE(Compact Edition) プロバイダーはありますか? MySQL MySQLのコネクタ(バージョン6.0以降) -使用しているとき、私は問題について読んだSkip()、Take()そしてSort()これについて誰も歓迎入力に彼らの経験/知識-同じ式ツリー内を。 注:MySQL Connector / NET Visual Studio統合は、VisualStudioのExpressEditionではサポートされていません。つまり、データベースエクスプローラーウィンドウでMySQLデータベースを表示したり、VisualStudioウィザードのダイアログボックスからMySQLデータソースを追加したりすることはできません。一部のユーザーは、これによりVisual StudioExpress内でEntityFrameworkとMySQLを使用する機能が制限されることに気付く場合があります。 Devart MySQLのキ繝ァ繝ヨ-私が読んだとしてMySQLのコネクタと同様の問題とそれのための非難のMSの両方試してみるには 、[これらの問題をすることになっている解い] SQLite SQLite用のDevartdotConnect System.Data.SQLite PostgreSQL Devart dotConnect for PostgreSQL Npgsql オラクル Devart dotConnect …

13
コマンド「dotnet-ef」に一致する実行可能ファイルが見つかりません
ASP.Net CoreRC2を使用してプロジェクトサンプルを実行しています Microsoft.EntityFramework.CoreとSQLiteます。 私はこのチュートリアルに従いました:https: //damienbod.com/2015/08/30/asp-net-5-with-sqlite-and-entity-framework-7/ しかし、私がこのコマンドを実行すると: dotnet ef migrations add FirstMigration このエラーが発生しました: No executable found matching command "dotnet-ef" これが私のproject.json設定です: { "dependencies": { "Microsoft.NETCore.App": { "version": "1.0.0-rc2-3002702", "type": "platform" }, "Microsoft.AspNetCore.Mvc": "1.0.0-rc2-final", "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0-rc2-final", "Microsoft.AspNetCore.Server.Kestrel": "1.0.0-rc2-final", "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0-rc2-final", "Microsoft.Extensions.Configuration.FileExtensions": "1.0.0-rc2-final", "Microsoft.Extensions.Configuration.Json": "1.0.0-rc2-final", "Microsoft.Extensions.Logging": "1.0.0-rc2-final", "Microsoft.Extensions.Logging.Console": "1.0.0-rc2-final", "Microsoft.Extensions.Logging.Debug": "1.0.0-rc2-final", "Microsoft.EntityFrameworkCore": "1.0.0-rc2-final", "Microsoft.EntityFrameworkCore.Sqlite": …

3
Entity Framework6トランザクションのロールバック
EF6を使用すると、次のように使用できる新しいトランザクションがあります。 using (var context = new PostEntityContainer()) { using (var dbcxtransaction = context.Database.BeginTransaction()) { try { PostInformation NewPost = new PostInformation() { PostId = 101, Content = "This is my first Post related to Entity Model", Title = "Transaction in EF 6 beta" }; context.Post_Details.Add(NewPost); context.SaveChanges(); PostAdditionalInformation PostInformation = new …

13
LINQ toEntitiesでの一括削除
LINQまたはLINQ-to-Entitiesの特定のクエリに一致するオブジェクトの束を一括削除する方法はありますか?私が見つけることができる唯一の参照は古く、削除したいすべてのオブジェクトを繰り返して手動で削除するのはばかげているようです。

6
キーワードはサポートされていないデータソース
デフォルトのメンバーシップデータベースを備えたasp.net-mvcアプリケーションがあります。ADO.NET EntityFrameworkからアクセスしています。 今度はIISに移動したいのですが、いくつか問題が発生しました。SQL Server Management Studioをインストールし、新しいDBを作成し、以前の.MDFファイルからすべてのデータをインポートする必要がありました。(私が知る限り)あとは接続文字列に変更するだけです。しかし、私はこれについて実際に経験しておらず、サポートされていないキーワード「データソース」を取得し続けています。例外。これが私の接続文字列です: <add name="ASPNETDBEntities" connectionString="Data Source=MONTGOMERY-DEV\SQLEXPRESS;Initial Catalog=ASPNETDB;Integrated Security=True;" providerName="System.Data.EntityClient" /> 何かアイデア、何が問題なのですか?

1
Entity FrameworkのPOCOとは何ですか?[閉まっている]
現在のところ、この質問は私たちのQ&A形式には適していません。回答は事実、参考資料、または専門知識によって裏付けられることを期待していますが、この質問は、討論、議論、世論調査、または広範な議論を求める可能性があります。この質問を改善し、場合によっては再開できると思われる場合は、ヘルプセンターにアクセスしてガイダンスを入手してください。 7年前に閉鎖されました。 POCOを学び始めたばかりですが、その使用法と利点を理解できません。stackoverflowのリンクをたどっても役に立ちませんでした。 POCOを使用したEntityFrameworkとは 誰かが簡単な例でPOCOの使用法を説明できますか?

4
EF 4.1でのエンティティの挿入がObjectContextと比較して非常に遅いのはなぜですか?
基本的に、1つのトランザクション内に35000個のオブジェクトを挿入します。 using(var uow = new MyContext()){ for(int i = 1; i < 35000; i++) { var o = new MyObject()...; uow.MySet.Add(o); } uow.SaveChanges(); } これは永遠にかかります!基になるObjectContextを(を使用してIObjectAdapter)使用すると、それでも低速ですが、約20秒かかります。DbSet<>線形検索を行っているようですが、これには2乗の時間がかかります... この問題を見ている人は他にいますか?

5
追加された複数のエンティティが同じ主キーを持つ場合があります
これが、Route、Location、LocationInRouteの3つのエンティティのモデルです。 次のメソッドは失敗し、コミットすると例外が発生します。 public static Route InsertRouteIfNotExists(Guid companyId, IListLocation> locations) { //Loop on locations and insert it without commit InsertLocations(companyId, routesOrLocations); RouteRepository routeRep = new RouteRepository(); Route route = routeRep.FindRoute(companyId, locations); if (route == null) { route = new Route() { CompanyId = companyId, IsDeleted = false }; routeRep.Insert(route); LocationInRouteRepository locInRouteRep …

5
何千ものEntityFrameworkオブジェクトを作成するときに、いつSaveChanges()を呼び出す必要がありますか?(インポート時のように)
実行ごとに数千のレコードを持つインポートを実行しています。私の仮定の確認を探しているだけです: これらのどれが最も理にかなっています: SaveChanges()すべてのAddToClassName()呼び出しを実行します。 n回の呼び出しSaveChanges()ごとに実行します。AddToClassName() すべての呼び出しのSaveChanges()後に実行します。AddToClassName() 最初のオプションはおそらく遅いですよね?メモリ内のEFオブジェクトを分析する必要があるため、SQLなどを生成します。 2番目のオプションは、両方の長所であると思いSaveChanges()ます。これは、その呼び出しの周りにtry catchをラップでき、一方が失敗した場合に一度にn個のレコードしか失うことができないためです。たぶん、各バッチをリスト<>に保存します。SaveChanges()呼び出しが成功した場合は、リストを削除します。失敗した場合は、アイテムをログに記録します。 最後のオプションも、SaveChanges()呼び出されるまですべてのEFオブジェクトがメモリ内にある必要があるため、おそらく非常に遅くなります。そして、保存が失敗した場合、何もコミットされませんよね?

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