1

モデルとリポジトリを別々のアセンブリ プロジェクトに分割して、MVC3 EF4 プロジェクトをセットアップしました。必要なプロパティなどの基本的な検証は正常に機能しますが、リモート検証を行う必要がある場合は、ユーザーが既にグループに属しているかどうかなどを確認する必要があります。リモート検証はモデル プロジェクト内のコントローラーを認識しません。

[Remote("IsUID_Available", "Validation")]

モデル プロジェクト内のメイン プロジェクトへの参照を追加しようとすると、循環依存関係が発生し、追加できないと表示されます。

モデルを別のアセンブリからメイン プロジェクトに移動する必要がありますか、それとも別のアセンブリにあるモデルでリモート検証を行う別の方法がありますか。

また、ここでのベストプラクティスは何ですか。モデルを別のアセンブリに配置することがベスト プラクティスであるという記事をいくつか読みましたが、MVC の検証機能の半分を使用できない場合、何がポイントになるのでしょうか。また、ほとんどの Microsoft MVC サンプルでは、​​モデルがメイン プロジェクトにのみ表示され、アセンブリに分割されていないことにも気付きました。

4

1 に答える 1

0

結局、これは問題ではなかったことがわかりました。上記のコードで指定されているように、別のアセンブリ内のモデルでリモート検証を使用できます。

Visual Studio でコントローラーが不明であるというエラーを出して赤い下線でマークしていたのは ReSharper でしたが、実際にコンパイルしてテストすると、リモート検証が機能しました。

于 2012-08-13T21:00:54.323 に答える