私は現在、リポジトリ、uow、services、ioc、ef4およびmvc3という新しいテクノロジおよびパターンを実行するために、n層Webアプリケーションを構築しています。n層Webアプリケーション全体で.NETメンバーシップ・プロバイダを使用
多くの髪を引っ張った後、リポジトリを使用して自分のエンティティを自分のサービスレイヤーで保存しています。
私はサービスレイヤーで必要なメソッドを定義し始めています。認証の実装を開始するのがいいと思っています。通常、私は自分の認証コードをロールバックしますが、メンバーシッププロバイダを試すように友人から言われました。
明らかに私はmvc3ウェブアプリケーション内でこれを使用するつもりですが、これを私のサービス層内でも使用できるかどうか疑問に思っていますか?誰かが私の記事やブログの投稿に私を向けることができますか?
NB。しかし、私が明らかにしている場合は謝罪します。私は私のサービス層を指しているときにWCFを意味するわけではないことを明確にしたいと思います。これらはサービス層のパターンを尊重する私のクラスです - http://martinfowler.com/eaaCatalog/serviceLayer.html。私は、このサービス層を後でWCFサービスを通して公開したいと思うかもしれません。
私は今何時間もグーグルで行ってきましたが、何も出てこなかった!
本当にありがとうございます。
そのリンクをありがとうございますが、あなたは自分のリポジトリ内で認証を実装できると言います。たぶん私は間違っていますが、これは認証が存在する正しい場所のようには思えません.SOCの観点から考えると、リポジトリはエンティティのCRUD操作のみを担当する必要があります。認証に最も適した場所はサービス層(アプリケーションロジックが存在する場所)で、現在のユーザーとそのアクセス許可をMVC Webアプリケーションからサービス層に渡す方法について考えています。私はそれが理にかなったことを願う私は今、リンクを読んで始めます、ありがとう! – jameskind
はい、意味があります。しかし、あなたはいつも 'Membership.GetUser(HttpContext.Current.User.Identity.Name)'を使って現在のアイデンティティ名に基づいてユーザを得ることができます。 ;) – Lorenzo