わかりましたので、少しアーキテクチャのガイダンスを探しています。私のチームは、構築中の新機能で特定の決定を再キャストする機会を得ており、SO の考えを見たいと思っていました :-)もちろん、私たちが変えていない特定のことなので、解決策はこのモデルに適合する必要があります. つまり、Web サービスを使用してユーザーがシステム上でアクションを実行できるようにする ASP.NET アプリケーションを用意したということです。
多くのシステムと同様に、さまざまなユーザーがさまざまな機能にアクセスする必要があるため、問題が発生します。Y ボタンにアクセスできるロールもあれば、Y ボタンと B ボタンにアクセスできるロールもあれば、B にしかアクセスできないロールもあります。これを目にするほとんどの場合、開発者は対処するために if ステートメントをごちゃまぜに入れただけです。 UI の状態。私の懸念は、未チェックのままにしておくと、これは保守不可能な混乱になることです.GUIに承認ロジックを配置することに加えて、承認されたユーザーのみが特定のメソッドを呼び出すようにするために、Webサービス(ajax経由で呼び出される)に配置する必要があるためです。 .
私の質問は、GUI/Web フォーム コードと Web サービス コードの両方で再利用できる特定のロールをチェックするランダムなアドホック if ステートメントをあちこちに減らすようにシステムを設計するにはどうすればよいかということです。
わかりやすくするために、これは Web フォームとAJAX 機能用のScript#を使用する ASP.NET Web アプリケーションです。スクリプト#が答えを捨てさせないでください。それはasp.net ajaxと根本的に違いはありません:-)