2

Entity Framework DbContextをローカルで動作させ、SQLデータベースに直接接続しました。

今、私はEntityFrameworkのものをWCFサービスの背後に配置しようとしています。WCFサービスは、基になるエンティティに対応する独自のサービスレイヤーオブジェクトのセット(DataContracts)を公開します。クライアントは、基盤となるデータストアとエンティティについて知ることはありません。

  • データの取得は簡単です。SQLと.ToList()へのLINQだけです。
  • 新しいオブジェクトの挿入はそれほど悪くはありません。クライアントからOperationContractを介してWCFサービスにDataContractを渡すと、WCFはDbContext.Add()、DbContext.SaveChanges()を呼び出します。

しかし、どうすれば更新できますか?PKを保持する必要がありますか?もしそうなら、それを行う通常の方法は何ですか?

あなたの助けは感謝されます。ありがとう。

4

1 に答える 1

0

はい、主キーを保持する必要があります。私はそれらをクライアントに面したオブジェクト自体に入れました。クライアントがデータを取得しているときにオブジェクトの一部としてそれらを返すことができるため、更新時にデータを返すことができます。

PK 名が抽象化に実際に適合しない場合は、別の名前を付けてください。サービスはマッピングを知る必要があります。

于 2011-12-17T17:39:11.207 に答える