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

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

9
エンティティフレームワーク-コードファースト-List <String>を格納できません
私はそのようなクラスを書きました: class Test { [Key] [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)] public int Id { get; set; } [Required] public List&lt;String&gt; Strings { get; set; } public Test() { Strings = new List&lt;string&gt; { "test", "test2", "test3", "test4" }; } } そして internal class DataContext : DbContext { public DbSet&lt;Test&gt; Tests { get; set; } …

10
指定された型メンバー 'Date'はLINQ to Entities Exceptionではサポートされていません
次のステートメントの実装中に例外が発生しました。 DateTime result; if (!DateTime.TryParse(rule.data, out result)) return jobdescriptions; if (result &lt; new DateTime(1754, 1, 1)) // sql can't handle dates before 1-1-1753 return jobdescriptions; return jobdescriptions.Where(j =&gt; j.JobDeadline.Date == Convert.ToDateTime(rule.data).Date ); 例外 The specified type member 'Date' is not supported in LINQ to Entities. Only initializers, entity members, and …

9
エンティティフレームワークを使用してIDでオブジェクトを削除する方法
以下のようなエンティティフレームワークでオブジェクトを削除する前に、オブジェクトを取得する必要があるようです var customer = context.Customers.First(c =&gt; c.Id == 1); context.DeleteObject(customer); context.Savechanges(); したがって、データベースを2回ヒットする必要があります。もっと簡単な方法はありますか?

5
多対多エンティティフレームワークの挿入/更新。どうすればいいのですか?
私はEF4を使用していますが、これは初めてです。私のプロジェクトには多対多があり、挿入または更新の方法を理解できないようです。コード化する方法を確認するためだけに、小さなプロジェクトを作成しました。 テーブルが3つあるとします クラス:ClassID-ClassName 学生:StudentID-FirstName-Surname StudentClass:StudentID-ClassID すべての関係を追加し、モデルブラウザを介してモデルを更新した後、StudentClassが表示されないことに気付きました。これはデフォルトの動作のようです。 次に、挿入と更新の両方を行う必要があります。どうやってやるの?サンプルをダウンロードできるコードサンプルやリンクはありますか、それとも5分の余裕がありますか?

7
最初のクエリなしでレコードを更新しますか?
データベースにクエリを実行して、アイテムのリストをロードするとします。次に、アイテムの1つを詳細ビューフォームで開き、データベースからアイテムを再クエリする代わりに、リストのデータソースからアイテムのインスタンスを作成します。 個々のアイテムのレコードをフェッチせずにデータベースレコードを更新する方法はありますか? これが私が今それをやっている方法のサンプルです: dataItem itemToUpdate = (from t in dataEntity.items where t.id == id select t).FirstOrDefault(); 次に、レコードをプルした後、アイテムのいくつかの値を更新して、レコードをプッシュバックします。 itemToUpdate.itemstatus = newStatus; dataEntity.SaveChanges(); これを行うにはもっと良い方法があると思いますか?

4
コードファースト:独立したアソシエーション対外部キーアソシエーション?
新しいプロジェクトに取り掛かり、POCOを設計するたびに、私は自分自身と精神的な議論を交わしています。私は、外部キーの関連付けを支持するように見える多くのチュートリアル/コードサンプルを見てきました。 外部キー協会 public class Order { public int ID { get; set; } public int CustomerID { get; set; } // &lt;-- Customer ID ... } 独立した団体とは対照的に: 独立した協会 public class Order { public int ID { get; set; } public Customer Customer { get; set; } // &lt;-- Customer object …

9
Linq:条件付きでwhere句に条件を追加する
このようなクエリがあります (from u in DataContext.Users where u.Division == strUserDiv &amp;&amp; u.Age &gt; 18 &amp;&amp; u.Height &gt; strHeightinFeet select new DTO_UserMaster { Prop1 = u.Name, }).ToList(); これらの条件がこのクエリを実行するメソッドに提供されたかどうかに基づいて、年齢、身長などのさまざまな条件を追加したいと思います。すべての条件にはユーザー部門が含まれます。年齢が指定されている場合、それをクエリに追加します。同様に、高さが指定されている場合は、それも追加したいと思います。 SQLクエリを使用してこれを行う場合は、文字列ビルダーを使用して、それらをメインのstrSQLクエリに追加します。しかし、ここLinqでは、同じクエリを3回記述し、各IFブロックに追加の条件があるIF条件の使用のみを考えることができます。これを行うより良い方法はありますか?

8
初期化子、エンティティメンバー、およびエンティティナビゲーションプロパティのみがサポートされています
私はこの例外を得ています: 指定された型のメンバー '有料'は、LINQ to Entitiesではサポートされていません。初期化子、エンティティメンバー、およびエンティティナビゲーションプロパティのみがサポートされています。 public ActionResult Index() { var debts = storeDB.Orders .Where(o =&gt; o.Paid == false) .OrderByDescending(o =&gt; o.DateCreated); return View(debts); } 私のモデルクラス public partial class Order { public bool Paid { get { return TotalPaid &gt;= Total; } } public decimal TotalPaid { get { return Payments.Sum(p …

8
エンティティフレームワークの更新コンテキスト?
どうすればコンテキストを更新できますか?データベースのビューに基づくエンティティがあり、ビューへのナビゲーションプロパティを持つ1つのテーブルエンティティに対して更新を行った場合、エンティティは更新ですが、ビューは更新されず、新しい更新に従って更新されません... Dbデータ。ありがとう!

11
Entity Frameworkが子オブジェクトを保存/挿入しようとするのを防ぐにはどうすればよいですか?
エンティティフレームワークでエンティティを保存するとき、当然、指定されたエンティティのみを保存しようとするものだと思いました。ただし、そのエンティティの子エンティティも保存しようとしています。これは、あらゆる種類の整合性の問題を引き起こしています。保存するエンティティのみを保存し、すべての子オブジェクトを無視するようにEFに強制するにはどうすればよいですか? プロパティを手動でnullに設定すると、「操作に失敗しました。1つ以上の外部キープロパティがnullにできないため、関係を変更できませんでした。」というエラーが表示されます。EFが子オブジェクトをそのままにしておいたので、子オブジェクトを特にnullに設定しているため、これは非常に逆効果です。 なぜ子オブジェクトを保存/挿入したくないのですか? これはコメントで前後に議論されているので、子オブジェクトをそのままにしておく理由を説明します。 私が作成しているアプリケーションでは、EFオブジェクトモデルはデータベースから読み込まれていませんが、フラットファイルの解析中にデータオブジェクトとして使用されています。子オブジェクトの場合、これらの多くは、親テーブルのさまざまなプロパティを定義するルックアップテーブルを参照します。たとえば、プライマリエンティティの地理的な場所です。 私はこれらのオブジェクトを自分で作成したので、EFはこれらが新しいオブジェクトであると想定し、親オブジェクトと共に挿入する必要があります。ただし、これらの定義はすでに存在しており、データベースに重複を作成したくありません。私は、EFオブジェクトを使用して、ルックアップを実行し、メインテーブルエンティティに外部キーを設定しています。 実際のデータである子オブジェクトがあったとしても、最初に親を保存し、主キーまたはEFを取得する必要があるだけで、混乱を招くようです。これがいくつかの説明を与えることを願っています。

12
'Microsoft.SqlServer.Types'バージョン10以降がAzureで見つかりませんでした
ASP.NET MVC 4でwebapiを作成しようとしています。webapiはEntity Framework 5の空間型を使用しており、非常に単純なコードを記述しています。 public List&lt;Area&gt; GetAllAreas() { List&lt;Area&gt; aList = db.Areas.ToList(); return aList; } エリアにDbGeometryが含まれています。 このローカルを実行すると機能しますが、それをazureに発行すると、次のエラーが発生します。 アセンブリ 'Microsoft.SqlServer.Types'バージョン10以上が見つからなかったため、このプロバイダーでは空間タイプと関数を使用できません。 誰でもこれを解決する方法を知っていますか?:) ありがとう!

27
エンティティフレームワークで明示的な移行を生成できません
新しい移行を追加していますが、このメッセージは次のことを示しています。 次の明示的な移行が保留中のため、明示的な移行を生成できません:[201203170856167_left]。新しい明示的な移行を生成する前に、保留中の明示的な移行を適用します。 誰も私を助けることができますか?

15
このエラーが発生する理由:次のEntitySet / AssociationSet-Entity1にマッピングが指定されていません。
Entity Framework 4をModel Firstアプローチで使用しています。 私はプロジェクトを開始し、エンティティを設計し、データベースを生成しました。すべてがうまくいきました。 次に、戻ってモデルに別のエンティティを追加する必要がありました。ただし、エンティティをEDMXにドラッグすると、次のエラーが発生します。 よし!Entity1をテーブルにマップする必要があるだけです。私はModel Firstアプローチを使用していますが、DDLを生成するときにテーブルが作成されることを期待しています。 このエラーを回避するにはどうすればよいですか?

3
エンティティフレームワーククエリ可能な非同期
私はEntity Framework 6を​​使用していくつかのWeb APIに取り組んでおり、私のコントローラーメソッドの1つは「Get All」で、データベースからテーブルのコンテンツをとして受け取ることを期待していますIQueryable&lt;Entity&gt;。私のリポジトリでは、非同期でEFを使用するのが初めてなので、これを非同期で実行する利点があるかどうか疑問に思っています。 基本的にそれは煮詰めます public async Task&lt;IQueryable&lt;URL&gt;&gt; GetAllUrlsAsync() { var urls = await context.Urls.ToListAsync(); return urls.AsQueryable(); } 対 public IQueryable&lt;URL&gt; GetAllUrls() { return context.Urls.AsQueryable(); } 非同期バージョンは実際にここでパフォーマンス上の利点をもたらしますか、それとも最初に(非同期を使用して)リストに投影し、次にIQueryableに移動することによって不要なオーバーヘッドを招きますか?

4
LINQ to Entitiesは、IEntityインターフェイスを使用したEDMプリミティブまたは列挙型のキャストのみをサポートします
私は次の一般的な拡張メソッドを持っています: public static T GetById&lt;T&gt;(this IQueryable&lt;T&gt; collection, Guid id) where T : IEntity { Expression&lt;Func&lt;T, bool&gt;&gt; predicate = e =&gt; e.Id == id; T entity; // Allow reporting more descriptive error messages. try { entity = collection.SingleOrDefault(predicate); } catch (Exception ex) { throw new InvalidOperationException(string.Format( "There was an error retrieving …

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