2009-10-18 3 views
5

MVCフレームワークにかなり新しいので、グループまたは部門の概念をサポートできるカスタムメンバシッププロバイダを確立しようとしています。カスタムメンバシップ/ロールプロバイダにグループメンバシップを追加する

各ユーザーを複数のグループのうちの1つに属するように割り当てる必要があります。各グループ(およびそのメンバー)は、GroupIdによって識別されるレコードのみを表示できます。

ログイン時にコントローラのIndexメソッドを呼び出すと、groupidが渡され、ユーザーが見ることができるレコードがフィルタリングされるように、このgroupidをユーザープロファイル内に何とか保存する必要があります。

私はそれが簡単なアプローチだと確信していますが、私はそれと精神的なブロックを持っているようです。

任意の洞察力が参考になります(そしておそらくembarassinglyシンプル!)

ロジャー

答えて

2

あなたの代わりに「グループ」の「役割」を使うことができれば、私は疑問に思います。権限はロールで簡単に処理できます。通常、ロールはadmin、manager、superuser、user、guestのようなものです。しかし、あなたの目的に役割を使用することはできませんでしたか?

メンバーシッププロバイダでロールを使用する方法の説明は、How To: Use Role Manager in ASP.NET 2.0です。あなたは "グループ"の代わりに "役割"を検索することで、より多くを見つけることができます。

メンバーシップソースコードを参考にしていない場合は、このページMicrosoft ASP.NET 2.0 Providers: Introductionからダウンロードして、ベーシックバージョンのロールのコーディング方法を確認してください。

+1

役割を設定する際に問題となるのは、潜在的な役割の数です。 カスタムメンバーシッププロバイダとカスタム定義のユーザーテーブルを実装しました。各ユーザーレコードには、関連付けられた追加のGroupIdがあります。その後、そのGroupIdでサイト全体のテーブルをフィルタリングできます。私はまた、特定のユーザーがさまざまな機能(追加、削除など)を実行できるようにするために、レイヤーを重ねて表示しています。 あなたのご意見ありがとうございます。 – RogerDodge

関連する問題