2

「RealCost」フィールドがあるフォームがあります。外観をカスタマイズしたいので、ユーザーの役割に基づいて検証する必要があります。

より明確に言うと、クライアントは自分のフィールドをフォームまたは詳細ページに表示し、役割「シニアセールス、マネージャー」のユーザーが編集できるようにしたいが、他の役割は編集できないようにしたいので、誰かが最善の方法を教えてくれますか?

ロール内のユーザーに基づいてカスタムで必要な検証を作成する必要があります。その場合、適切な実装を提供していただけますか?

このためのカスタムモデルを作成するように言われるかもしれませんが、面倒であり、役割は動的であるため、事前定義された役割のセットではないと思います。

私は十分に明確だったと思います

4

3 に答える 3

1

複製ページを作成し、1 つのページにページ内の何も変更しないビュー モデルを含めることができます...さらに、編集可能なページにリダイレクトする EDIT ボタンを使用できます。そのページを認証で保護します。SO 編集する前にロールとして認証するように求められます

それ以外の場合.. ViewModel が決定を下す方法はありません。それはサービス レイヤー上にあります。

于 2013-02-12T19:09:01.687 に答える
1

セキュリティは、モデルまたはコントローラーで発生する必要がありますが、ビューでは発生しないことは間違いありません。これは、ビューの懸念の範囲をはるかに超えています。これは、コントローラーが提供するデータを表示することです。

于 2010-12-24T17:57:46.513 に答える
1

@Wyatt を拡張するには、これらすべての決定をモデル レベルで行い、「View Model」にすべての回答を入力する必要があります。これをビューで使用して、ユーザー エクスペリエンスを向上させることができます。

このフォームの ViewModel には、IsRealCostEditable プロパティがあります。これは、ユーザーの役割を確認することによって、サービス/モデル レイヤーによって設定されます。そのフィールドの UI を簡単に調整できるようになりました。

于 2010-12-25T04:51:47.010 に答える