質問

私は2つのプロジェクトとASP.NETソリューションに取り組んでいます。一つは、Webインタフェースであり、他は私のビジネスロジックが含まれています。私は2番目のプロジェクトで私のデータアクセスにSQLにLINQを使用しています。

私のデータベースのほかに、私はテーブルには、ユーザー情報を保持しているユーザーと呼ばれています。

私はのMembershipProviderを実装するために始めました。私はのMembershipUserはのMembershipProviderと結合されていることに気づきます。ユーザーの話に私のBLL / DALを得るための最も正しい方法は何ですか? 私は、最小限のMembershipUserを実装する必要があり、ユーザーがメソッドを呼び出すたび、それは例えばのために呼び出します。 GetUserInfo()私のBLL / DALでは、ユーザーに関する完全な情報を取得する?

または私はのMembershipUserクラスのメソッドは、(このカスタムユーザークラスはLINQとは関係ありません)BLL / DALに(ラッパのような)私のカスタム「ユーザー」クラスメソッドを呼び出して作る必要がありますか?

または私は何とかたMembershipUserを拡張するためにSQLクラス "CFUsers" へのLINQを拡張することができます。

私は、これは理にかなって願っています。

役に立ちましたか?

解決

私は通常、この別々のエンティティのMembershipUser会員を中心に展開として一般的な関心事であり、あなたのシステムのユーザーは、これらの両方のエンティティが1つに含まれる可能性がどこにドメインを伴うものは何でも、私は、あなたの視点を参照してくださいかを中心に展開しているを参照してくださいそう。プロファイルは間違いなく行くための最も簡単な方法です。

MSDNのドキュメント上walkthoughではあります http://msdn2.microsoft.com /en-us/lib...US,VS.80).aspx とA スコット・ガスリーから良いウォークスルーで http://weblogs.asp.net/scottgu/archi。 ..18 / 427754.aspxする

いつものようにそれはあなたの目標が何であるかに依存します。プロフィールに追加することは簡単なメカニズムであります 追加データのため。それは、カスタマイズの方法ではほとんど必要とし、 Webアプリケーションのための情報を簡単に利用できるようになります。これがないかもしれません あなたは、このタイプのデータを保存する場所。ない場合は、それが非ソリューションです。

これは(デフォルトに由来新しいプロバイダを作り、適合しない場合 あなたがすでに持っているものを継承)偉大なオプションです。 そしてもちろん、究極ます。http:// codesmart.wordpress.com/2009/03/27/extending-the-microsoft-aspnet-membership-provider/する

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top