0

小さなイントラネットを作成しようとしています。このために、ローカルPCにWebサーバーがあります。このWebサイトのルートはダッシュボードであり、ログイン/登録機能(デフォルトのASP.NETメンバーシップ)が含まれます。

http:// localhost
http:// localhost / Account

イントラネットの残りの部分は、次のようなサブアプリケーションで構成されます。

http:// localhost / ApplicationName

ルートWebサイト、およびほとんどのサブアプリケーションでは、デフォルトのASP.NETメンバーシッププロバイダーを利用するユーザーの認証が必要になります。

すべてのプロジェクト(ルートとサブ)はVisual Studioの個別のプロジェクトであり、すべてのプロジェクトには、展開用の独自のWebSetupプロジェクトがあります。

1.)サブアプリケーションでASP.NETメンバーシップを使用するにはどうすればよいですか?

さらに、ほとんどのアプリケーション(rootおよびsub)は、サードパーティのライブラリ(データフレームワーク)を使用します。

2.)ルートプロジェクトでライブラリを参照し、サブアプリケーションで参照されたライブラリを「使用」するにはどうすればよいですか?

提案ありがとうございます!

4

2 に答える 2

2

複数のWebプロジェクトから使用できるクラスライブラリプロジェクトに共通のコードを作成します。メンバーシッププロバイダーについては、メンバーシップデータを外部SQLインスタンス(同じサーバー上にある可能性があります)に格納してから、同じ接続文字列を使用して各プロジェクトでアクセスする必要があると思います。

于 2009-05-04T11:57:34.183 に答える
1

メンバーシップは、1つまたは複数のアプリケーションで機能するように設計されています。各アプリケーションのメンバーシップデータを格納できるデータベースのインスタンス(任意のアプリケーションの任意のデータベースとは別)を作成できます。すべてのアプリケーションで同じメンバーシップデータを使用する場合は、各アプリケーションのweb.configでメンバーシップを定義するときに、同じapplicationName(およびconnectionString)を指定します。

質問の2番目の部分については、tvanfossonが投稿した回答(コメントとともに)が正しい道にあなたを導くはずです。

編集(@ ropstahコメント):ああ、私はそれを説明しませんでした。その場合は、シングルサインオン(SSO)を実装する必要があります。Masoud Tabatabaeiは、ASPAlliance.comにプロセスを説明する記事を投稿しました。また、このStackOverflowの質問に対してKeithRullが提供した回答も役立つ場合があります。

于 2009-05-04T16:47:17.107 に答える