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

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

4
最初にEFコードを使用して複合キーをマッピングする
SQLサーバーテーブル: SomeId PK varchar(50) not null OtherId PK int not null これをEF 6コードで最初にどのようにマップする必要がありますか? public class MyTable { [Key] public string SomeId { get; set; } [Key] public int OtherId { get; set; } } 各列の順序を設定する必要があるいくつかの例を見ましたが、それは必要ですか? これに関する公式ドキュメントはどこかにありますか?

2
Entity Framework-ナビゲーションプロパティを手動で追加
データベースからEntity Framework Model(4.0)を生成しました。データベースを設計しておらず、スキーマを制御できませんが、外部キー制約が定義されていないテーブルがいくつかありますが、暗黙的な関係が定義されています。 例えば: 次の列を持つPeopleというテーブルがあります。GenderIDRaceID GenderとRaceの両方のテーブルがありますが、Peopleテーブルには外部キーがありません。 モデルをインポートしたときに、これらの関係のナビゲーションプロパティが追加されませんでした。手動で追加しようとしましたが、From RoleとTo Roleが無効になっています。自分で関係を追加する方法がわかりません。どうすればよいですか?

25
データベースに名前の付いたオブジェクトがすでに存在します
パッケージマネージャーコンソールからのデータベースの更新に失敗しました。Entity Framework 6.xとコードファーストアプローチを使用しました。エラーは 「データベースにはすでに「AboutUs」という名前のオブジェクトがあります。」 この問題を解決するにはどうすればよいですか? internal sealed class Configuration : DbMigrationsConfiguration<Jahan.Blog.Web.Mvc.Models.JahanBlogDbContext> { public Configuration() { AutomaticMigrationsEnabled = true; AutomaticMigrationDataLossAllowed = false; } protected override void Seed(Jahan.Blog.Web.Mvc.Models.JahanBlogDbContext context) { } } 私のDbContextは: public class JahanBlogDbContext : IdentityDbContext<User, Role, int, UserLogin, UserRole, UserClaim> { public JahanBlogDbContext() : base("name=JahanBlogDbConnectionString") { Database.SetInitializer(new DropCreateDatabaseIfModelChanges<JahanBlogDbContext>()); } …

10
Entity Framework 4対NHibernate [終了]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 5年前休業。 この質問を改善する Entity Frameworkの最初のバージョンがWebでも(stackoverflowでも)話題になっていますが、NHibernateのようなより良い代替案がすでにある場合は、それが適切な選択肢ではなかったことは明らかです。しかし、Entity Framework 4とNHibernateの良い比較を見つけることができません。今日、NHibernateはすべての.NET ORMのリーダーであると言えますが、Entity Framework 4がこの位置からNHibernateを置き換えることが期待できます。MicrosoftがEF4に非常に優れた機能を実際に注入した場合、Visual Studioとの統合があり、扱いやすく、ほとんどのショップで常にMS製品が優先されるため、NHibernateに良い競争をもたらすことができると思います。

6
Entity Frameworkコードの最初の一意の列
Entity Framework 4.3とCode Fistを使用しています。 クラスがあります public class User { public int UserId{get;set;} public string UserName{get;set;} } Entity Frameworkに、データベーステーブルを作成するときにUserNameが一意でなければならないことを伝えるにはどうすればよいですか?可能であれば、構成ファイルの代わりにデータ注釈を使用したいと思います。



5
Entity Framework Code Firstはストアドプロシージャをサポートしていますか?
私はEFコードファーストのプレゼンテーションをいくつか見てきましたが、EFCFがストアドプロシージャでどのように機能するかは知りませんでした。 spを使用するメソッドを宣言するにはどうすればよいですか?エンティティのプロパティを手動でspパラメータにマッピングせずに、spを呼び出すメソッドにエンティティを渡すことはできますか? また、モデルを変更するとどうなりますか?モデルからテーブルを再作成しているときにspをドロップしますか?そしてトリガーはどうですか? これらがサポートされていない場合、将来的にサポートする予定はありますか?

2
Entity Frameworkデータコンテキストを読み取り専用にする方法
Entity Framework Data Contextをサードパーティのプラグインに公開する必要があります。目的は、これらのプラグインがデータのみをフェッチできるようにし、挿入、更新、削除、またはその他のデータベース変更コマンドを発行できないようにすることです。したがって、データコンテキストまたはエンティティを読み取り専用にするにはどうすればよいですか。

26
「Update-Database」という用語はコマンドレットの名前として認識されません
私はEF5 beta1を使用していますが、以前は「Update-Database」を実行できました。Visual Studioをシャットダウンしたので、実行できません。次のエラーが発生します。 「Update-Database」という用語は、コマンドレット、関数、スクリプトファイル、または操作可能なプログラムの名前として認識されません。名前のスペルを確認するか、パスが含まれていた場合は、パスが正しいことを確認して、再試行してください。1行目:char:16 + Update-Database <<<< -verbose + CategoryInfo:ObjectNotFound:(Update-Database:String)[]、CommandNotFoundException + FullyQualifiedErrorId:CommandNotFoundException EF5b1を再インストールしようとしましたが、成功しましたが(既にインストールされています)、 'Update-Database'はまだ機能しません。 誰でも手伝ってくれる???

4
ASP.NET MVC:すべてのリクエストに対してコントローラーが作成されますか?
非常に単純な質問:ASP.NETのコントローラーはすべてのHTTP要求に対して作成されますか、それともアプリケーションの起動時に作成され、要求全体で再利用されますか? コントローラは特定のHTTPリクエストに対してのみ作成されますか? 以前の仮定が正しい場合、それに依存できますか?1つの要求に対してのみ有効になるデータベースコンテキスト(Entity Framework)を作成したいと思います。コントローラのコンストラクタで初期化されたプロパティとしてそれを作成する場合、すべてのリクエストに対してコンテキストの新しいインスタンスが作成されることは許可されますか?

14
エンティティフレームワークでnull値を照会するにはどうすればよいですか?
このようなクエリを実行したい var result = from entry in table where entry.something == null select entry; そして、 IS NULL生成。 編集:最初の2つの回答の後、Linq to SQLではなくEntity Frameworkを使用していることを明確にする必要があると感じています。object.Equals()メソッドはEFでは機能しないようです。 編集2:上記のクエリは意図したとおりに機能します。正しく生成されIS NULLます。しかし、私の生産コードは value = null; var result = from entry in table where entry.something == value select entry; 生成されたSQLはでしたsomething = @p; @p = NULL。EFは定数式を正しく変換しているようですが、変数が含まれている場合は、通常の比較と同じように処理されます。実際に理にかなっています。この質問を閉じます

7
コンテンツを読み込まずにEntityFramework内の行をカウントする方法は?
EntityFrameworkを使用して、テーブル上の一致する行をカウントする方法を決定しようとしています。 問題は、各行に何メガバイトものデータが(バイナリフィールドに)ある可能性があることです。もちろん、SQLは次のようになります。 SELECT COUNT(*) FROM [MyTable] WHERE [fkID] = '1'; すべての行をロードし、次のようにしてCountを見つけることができます。 var owner = context.MyContainer.Where(t => t.ID == '1'); owner.MyTable.Load(); var count = owner.MyTable.Count(); しかし、それは非常に非効率的です。より簡単な方法はありますか? 編集:ありがとうございます。DBをプライベートアタッチメントから移動して、プロファイリングを実行できるようにしました。これは役立ちますが、予期しない混乱を引き起こします。 そして、私の実際のデータは少し深いので、アイテムのケースのパレットを運ぶトラックを使用します。少なくとも1つのアイテムがなければ、トラックを離れたくありません。 私の試みを以下に示します。CASE_2がDBサーバー(MSSQL)にアクセスすることはありません。 var truck = context.Truck.FirstOrDefault(t => (t.ID == truckID)); if (truck == null) return "Invalid Truck ID: " + truckID; var dlist = …

4
LinqからEntityFrameworkの日時
Наэтотвопросестьответына スタックオーバーフローнарусском:エンティティへのLINQは方法'のSystem.DateTime AddDays(ダブル)'を認識しません。 私のアプリケーションでは、Entity Frameworkを使用しています。 私のテーブル -Article -period -startDate 一致するレコードが必要=> DateTime.Now > startDate and (startDate + period) > DateTime.Now 私はこのコードを試しましたが、現在は機能しています Context.Article .Where(p => p.StartDate < DateTime.Now) .Where(p => p.StartDate.AddDays(p.Period) > DateTime.Now) コードを実行すると、次の例外が発生します LINQ to Entitiesは、メソッド 'System.DateTime AddDays(Double)'メソッドを認識しないため、このメソッドをストア式に変換できません。

4
エンティティフレームワークのコードファーストのnull外部キー
私が持っているUser< Countryモデル。ユーザーは国に属していますが、どの国にも属していない可能性があります(null外部キー)。 どうすれば設定できますか?国がnullのユーザーを挿入しようとすると、nullにすることはできません。 モデルは次のとおりです。 public class User{ public int CountryId { get; set; } public Country Country { get; set; } } public class Country{ public List<User> Users {get; set;} public int CountryId {get; set;} } エラー: A foreign key value cannot be inserted because a corresponding primary key value …

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