MVC と POCO を使用した検証のベスト プラクティスに関する質問があります。私が知る限り、ベスト プラクティスは、POCO をミラーリングする ViewModel を用意し、AutoMapper などを使用して、ViewModel (ビュー モデル) が検証された後に、ViewModel を POCO に解析することです。
それはすべてうまくいっていますが、POCO から継承し、View Model で検証したいプロパティのみを上書きすることに問題があるかどうか疑問に思っていますか?
ポコ:
public partial class Sector
{
public virtual int SectorId { get; set; }
public virtual string Name { get; set; }
}
私のViewModelは次のようになります。
public class SectorDTO : Sector
{
[Required]
[StringLength(10)]
public override string Name {get; set;}
}
アップデート
このソリューションは、主にビジネスレイヤーとデータレイヤーのセットアップ方法が原因で機能しなくなりました。私の解決策は、代わりに、すべての検証を含む DTO を含む ViewModel を作成し、AutoMapper を使用してオブジェクトを POCO タイプに戻すことでした。