タグ付けされた質問 「ef-database-first」

10
コード優先vsモデル/データベース優先[終了]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 12か月前に閉鎖。 Entity Framework 4.1をモデル/データベース優先でEDMXダイアグラムよりコードファーストで使用する場合の長所と短所は何ですか? EF 4.1を使用してデータアクセスレイヤーを構築するためのすべてのアプローチを完全に理解しようとしています。リポジトリパターンとを使用していますIoC。 コードファーストアプローチを使用できることを知っModelBuilderています。エンティティとコンテキストを手動で定義し、スキーマを微調整するために使用します。 EDMX図を作成し、T4テンプレートを使用して同じPOCOクラスを生成するコード生成ステップを選択することもできます。 どちらの場合も、私POCOはORM不可知論的であり、から派生するコンテキストを持つオブジェクトになりますDbContext。 Enterprise Managerでデータベースを設計し、モデルをすばやく同期し、デザイナーを使用して微調整できるので、データベースファーストが最も魅力的なようです。 では、これら2つのアプローチの違いは何ですか?それは単にVS2010対Enterprise Managerの好みについてですか?

17
Entity Framework 6を​​使用してレコードを更新する方法は?
EF6を使用してレコードを更新しようとしています。最初にレコードが見つかったら、それを更新します。これが私のコードです:- var book = new Model.Book { BookNumber = _book.BookNumber, BookName = _book.BookName, BookTitle = _book.BookTitle, }; using (var db = new MyContextDB()) { var result = db.Books.SingleOrDefault(b => b.BookNumber == bookNumber); if (result != null) { try { db.Books.Attach(book); db.Entry(book).State = EntityState.Modified; db.SaveChanges(); } catch (Exception ex) { throw; …

9
ASP.NET Identity with EF Database First MVC5
Database FirstとEDMXで新しいAsp.net Identityを使用することは可能ですか?それとも最初にコードだけですか? これが私がしたことです: 1)新しいMVC5プロジェクトを作成し、新しいIDでデータベースに新しいユーザーテーブルとロールテーブルを作成しました。 2)次に、Database First EDMXファイルを開き、新しいIdentity Usersテーブルにドラッグしました。それに関連する他のテーブルがあるからです。 3)EDMXを保存すると、Database First POCOジェネレーターがユーザークラスを自動作成します。ただし、UserManagerおよびRoleManagerは、新しいIdentity名前空間(Microsoft.AspNet.Identity.IUser)から継承するUserクラスを想定しているため、POCO Userクラスを使用しても機能しません。 私のPOCO生成クラスを編集して、ユーザークラスがIUserから継承するようにすることは、可能な解決策だと思いますか? または、ASP.NET IdentityはCode First Designとのみ互換性がありますか? ++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++ 更新:以下のAnders Abelの提案に従って、これは私がやったことです。それはうまくいきますが、もっとエレガントな解決策があるかどうか疑問に思っています。 1)自動生成されたエンティティと同じ名前空間内に部分クラスを作成して、エンティティUserクラスを拡張しました。 namespace MVC5.DBFirst.Entity { public partial class AspNetUser : IdentityUser { } } 2)DBContextではなくIdentityDBContextから継承するようにDataContextを変更しました。EDMXを更新し、DBContextクラスとEntityクラスを再生成するたびに、これをこれに戻す必要があることに注意してください。 public partial class MVC5Test_DBEntities : IdentityDbContext<AspNetUser> //DbContext 3)自動生成されたユーザーエンティティクラス内で、次の4つのフィールドにオーバーライドキーワードを追加するか、これらのフィールドはIdentityUserから継承されるため(ステップ1)、コメント化する必要があります。EDMXを更新し、DBContextクラスとEntityクラスを再生成するたびに、これをこれに戻す必要があることに注意してください。 override public string Id { get; …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.