問題タブ [entity]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
nhibernate - NHibernate の値オブジェクトの別の表
私はDDDとNHibernateが初めてです。
私の現在のプロジェクトでは、値オブジェクトを含むエンティティ Person があります。たとえば、Address としましょう。今日は、これでいいです。しかし、いつの日か、私の値オブジェクト (この場合は Address) がエンティティーにならなければならないという要件が生じるかもしれません。
これを DDD 方式でモデル化する前に、よりデータ中心のアプローチで、ID を持つテーブル Person と、別のテーブル Address があり、その PK は実際には FK であり、それは Person の ID (つまり、 、1 対 1 の関係)。
値オブジェクトをコンポーネントとしてマップすると、その値がエンティティ テーブルの列としてマップされることを読んでいます (したがって、1 対 1 の関係はありません)。
私の考えでは、必要に応じて代理キーを Address テーブルに追加するだけで、それが Entity になるというものでした。
NHibernate を使用してこれをどのように設計すればよいですか? Address オブジェクトをエンティティにする必要がありますか?
申し訳ありませんが、私の質問が明確かどうかさえわかりません。ここで本当に迷っています。
orm - DDD:サブクラスとルートエンティティ
私が典型的なエンティティCarを持っているとしましょう
このエンティティは、私のドメインモデルでは、Aggregateのルートエンティティになります。
今、私が車を専門にしているとしましょう。私はフェラーリを作成します、そしてフェラーリの幸せな所有者はニックネームでそれらを呼ぶのが好きです:
別のエンティティであるCompanyエンティティがあるとします。これは、別のAggregateのルートエンティティになります。エンティティPersonに代表される、会社で働いている多くの人々がいます。人は車を持っているかもしれません。しかし、会社の社長は通常非常に裕福であり、この種の人々はフェラーリスを持っています:
この状況では、別のアグリゲートのルートエンティティのスペシャライゼーションであるフェラーリへの参照を保持している、CompanyAggregate内にあるエンティティPresidentがいます。
これはDDDの観点から正しいですか?ルートエンティティ自体の特殊化を同じ集合体のルートエンティティと見なすことができますか/すべきですか?つまり、私が説明したドメインでは、エンティティFerrariはCar Aggregateのルートエンティティでもありますか(FerrariもCarであるため)?
ここで、このモデルをデータベースに永続化する必要があるとしましょう。私の質問は、使用するOR/Mフレームワークに依存しないと思います。
車を保持するテーブルをどのように作成すればよいですか?「CarType」列(可能な値:「Car」、「Ferrari」)とnull許容のニックネーム列を持つ単一のテーブルCarsを作成する必要がありますか?
または、車用のテーブルとフェラーリ用のテーブルを作成する必要があります。後者のPKは車のFKです。
ありがとう!
hibernate - Hibernate マッピングの継承
クラス ClassA が TableA にマップされています。マッピングもあり、エンティティ名は EntityA です。
ここで、TableA の ClassA 間に EntityATwo という名前の別のマッピングを作成する必要がありますが、少し異なります。
EntityA から EntityATwo へのマッピングをコピーして貼り付けることはできますが、それを維持するのは非常に困難です。
したがって、私の質問は、EntityATwo のマッピングを作成する方法です。ここで、EntityATwo と EntityA の違いのみを宣言し、残りのマッピングは EntityA から派生します。
ありがとう、フランツ
nhibernate - (Fluent) NHibernate - 問題マッピング ID
Id のマッピングに問題があります。エンティティの構造は次のとおりです。
私のモデルでは、すべての EntityA に必ず 1 つの EntityB が含まれている必要があり、存在するすべての EntityB は EntityA の一部である必要があります。一般的な1 対 1 の関係です。
さて、マッピングに:
次に、EntityA を作成し、それ自体で EntityB を作成します。それから私がそれを保存するとき
NHibernate が「プロパティを解決できません: Id」という例外をスローします。
ただし、私のログは、EntityA が DB に「挿入」されたことを示しており、デバッグによって、EntityA.Id が値に関連付けられていることがわかります (つまり、nhibernate は entityA を保存し、DB によって生成された Id を取得し、それに応じて entityA.Id プロパティを設定します)。
ただし、entityB は作成されませんでした (データベースは空で、ログには何も表示されません)。したがって、「GeneratedBy.Foreign("Id")」定義を使用して、EntityB を保存するときに、NHibernate がこのプロパティにアクセスする際に問題があったようです。プロパティ「Id」が直接EntityAのプロパティではなく、EntityBaseのプロパティであるためかもしれませんが、私がしたことは私には正しいようです。
問題はどこだ?どうすれば解決できますか?
ありがとう!
編集:ここでは、スタック トレースの一部を示します。ご覧のとおり、Cascade を実行し、もう一方のエンティティで SaveOrUpdate を実行しました。
php - ドメインエンティティメソッド内から依存/親を取得する
エンティティから依存/親オブジェクトを取得するにはどうすればよいでしょうか。
これにより、データベースからその人物の Address オブジェクトが取得され、オブジェクトとして返されます。これはそれを行う良い方法であり、これが問題ない場合、コードはどのように見えるべきですか.
これを行うことは、アドレスが関連するエンティティ/値オブジェクトであることをオブジェクト自体が認識する必要があることを意味します。この種の構文が必要な理由は、プレゼンテーション層できれいに見えるからです。
person クラスは次のようになります。
では、getAddress メソッド内で $domain オブジェクトを使用し、関係情報を Person クラスに保持しても問題ないでしょうか?
私は答えをずっと探していたので、答えてください。
entity-framework - Entity Framework、ストアドプロシージャ、ASP.NETGridView-空の行を挿入
グリッドに空の行を追加したい。
GridViewInsertイベントの場合:
変更を保存すると、次のエラーが発生します。
System.Data.OptimisticConcurrencyExceptionがユーザーコードによって処理されませんでしたMessage="ストアの更新、挿入、または削除ステートメントが予期しない行数(0)に影響しました。エンティティが読み込まれてからエンティティが変更または削除された可能性があります。ObjectStateManagerエントリを更新してください。" Source = "System.Data.Entity" StackTrace:at System.Data.Mapping.Update.Internal.UpdateTranslator.Update(IEntityStateManager stateManager、IEntityAdapter adapter)at System.Data.EntityClient.EntityAdapter.Update(IEntityStateManager entityCache)at System.Data .Objects.ObjectContext.SaveChanges(Boolean acceptChangesDuringSave)at System.Data.Objects.ObjectContext.SaveChanges()at Default1.GridViewInsert(Object sender、EventArgs e)in c:
c# - エンティティ フレームワークを使用して子オブジェクトのリストを選択するときに、関連する親オブジェクトへの参照を取得する方法
子オブジェクトのリストにアクセスするときに、EF を使用して親プロパティの値にアクセスするにはどうすればよいですか。
つまり、Project オブジェクトと Timesheet オブジェクトがあります。
プロジェクト
ID
名
...
TimeSheet
ProjectId
UserId
Date
TimeSpent
...
プロジェクトとそれに関連するタイムシートを取得する方法は理解していますが、特定のユーザーのすべてのタイムシートを取得して、プロジェクト名と各タイムシート レコードを表示したい場合はどうすればよいでしょうか。
例: ProjectName、Date、TimeSpent
その結果セットを形成する新しいエンティティを作成するのがベスト プラクティスですか、それとも IEnumerable を返して .Project.Name フィールドにアクセスできるようにするだけでよいでしょうか。
これは、Linq to Sql を使用するか、ADO.net/SP などをまっすぐに使用することで非常に簡単ですが、EF で私を殺します..
何か案は?
mysql - godaddy で MySQL と Entity Framework を使用したセキュリティ例外
SecurityException
Godaddy で Entity フレームワークを使用すると、エラーが発生します。エンティティは MySQL ストアに対して構成されています。(v. 6.1.2) ただし、例外には少し奇妙な点があります... 例外スタックを見ると、サイト内の任意の場所で MySQL への接続を開くと、同じ例外が発生するはずです。ただし、MySQL接続を直接開くと、サイトの別の部分で機能しているようです...
検証は次のとおりです。
誰かが同様の問題に遭遇しましたか?
完全なエラー スタック トレースは次のとおりです。
wpf - データ リーダーに互換性がありません...メンバーには、データ リーダーに対応する列がありません
VS 2008、SQL Server 2008、および WPF 3.5 を使用して、スキーマにいくつかの変更を加え、モデルを更新しました。クライアントアプリが特定のエンティティを呼び出し、次の結果が得られるまで、コンパイルして正常に実行されます (実際の名前は置き換えられます)。
関連するエンティティ名とプロパティ名をサービス アプリで検索し、テーブル マップでプロパティの名前を変更しようとしました。他にも同じエラーが報告されているようですが、タイムリーな回答が見つからないようです... .
...これを追跡する方法を知っている人はいますか?もしそうなら、将来回避するために従うべき修正または方法論はありますか?