2

RIA サービス (2009 年 7 月プレビュー) を使用して、既存の EF モデルの一部を公開することを調査しています。ドメイン サービス クラスを Web アプリケーションに追加し、使用する EF モデルを指定して、ドメイン サービス経由で利用できるようにするエンティティをいくつか選択しました (一部は編集可能で、ほとんどは編集可能ではありません)。

ビルドしてすべてがうまくいきましたが、ドメイン サービスにエンティティを追加したい場合はどうすればよいでしょうか。現在のクラスを削除して再度追加すると、RIA サービスが RTM にヒットしたときにこの穴がふさがれるのでしょうか?

4

3 に答える 3

1

私は同意します。DBが変更されるたびに手動ですべてを入力するのは面倒です。最終的には、新しい一時ドメインサービスクラス(およびメタデータ)を作成し、コードを既存のドメインサービスにカットアンドペーストしてから、プロジェクトから一時サービスを削除します。


別のオプションとして、生成されたファイルを部分クラスにし、すべての新しいクエリを別のファイルに入れ、DBスキーマが変更されるたびに、生成されたファイルを吹き飛ばしてウィザードを使用して再作成することができます(試してみませんでした)。ちょっとした考え

于 2009-11-20T04:45:32.693 に答える
0

新しいエンティティのコードを追加するだけです...適切なメソッドを追加し、クエリを実行し、必要な操作に応じて、挿入、更新、削除、カスタム操作を行います。

Yoiuは、エンティティを追加したいという理由だけで、理論的には興味深いアプリロジックの束を含む現在のクラスを削除する必要はありません(私は想像します)。

于 2009-08-29T23:03:55.707 に答える
0

この問題に対する私の解決策は、ほとんどの作業を実行するコードスニペットを作成することでした。

タイプefdsmethodsし、タブを2回入力し、使用するメソッドのEntitySet名、EntityType名、およびエンティティ変数を置き換えるだけで、完了です。これにより、4つの標準メソッドを非常に簡単に追加できます。

スニペットをパッチ(#10154)としてcodeplexのSilverlight Contribプロジェクトに送信しましたが、まだ受け入れられていません。それまでは、ここからスニペットをダウンロードできます。

これがお役に立てば幸いです。

于 2011-08-10T16:18:22.910 に答える