ASP.NET MVCでさまざまなセキュリティレベルのユーザーのさまざまなセクションを表示するWebサイトを開発しています。本質的には、ビューは同じですが、セキュリティレベルが高いユーザーは、管理者などのセキュリティレベル以上のユーザーには見えないセクションを表示できる必要があります。オブジェクト指向のさまざまなビューセクションを表示する方法
私はオブジェクト指向の方法でこれを行う方法がわかりません。これは継承で行うことができると思いますが、継承を実装する方法はわかりません。
はまた、私は
<% if (User has some security level) { %>
<span>show this info</span>
<% } %>
のようなものをやって、IFSの多くをコーディングすることができます知っているが、これはうまく香りがしません。実際には、オブジェクト指向の原則やデザインをこのタスクに使用する方法がわかりません。
私はこれが一般的な作業だと思うので、このタスクを達成するパターンがあると思います。たとえば、Stackoverflowは、質問(または回答またはコメント)を投稿し、他のすべてのユーザーに同じオプションを表示しないユーザーに対していくつかのオプション(編集、削除など)を表示するときにこれを行います。
これはオブジェクト指向されていない場合、およびユーザーがJavaScriptを無効にしても動作しない – eKek0
私はeKek0に同意します。加えて、ビューはロジックが何もないはずがないという私の強い信念です。言い換えれば、ビューに埋め込まれたコードは、循環的複雑度1を持つ必要があります。すなわち「if」文はない。 –
私はあなたがあまりにもそれをやることに心配していると思う - あなたのビューはダムでなければならず、すべてのロジックがコントローラにあり、モデルを通して必要な情報を渡すだけです –