ASP.NET: как делиться ресурсами (членство, библиотеки) между веб-приложениями - PullRequest
0 голосов
/ 04 мая 2009

Я пытаюсь создать небольшую интранет. Для этого у меня есть локальный веб-сервер. Корнем этого веб-сайта будет панель инструментов, которая будет содержать функции входа / регистрации (по умолчанию членство в ASP.NET).

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

Остальная часть интрасети будет состоять из подприложений, таких как:

http://localhost/ApplicationName

Корневой веб-сайт и большинство вложенных приложений будут требовать аутентификации пользователя, для которого я буду использовать поставщика членства ASP.NET по умолчанию.

Все проекты (root и sub) являются отдельными проектами в Visual Studio, и у каждого проекта есть свой Проект WebSetup для развертывания.

1.) Как я могу использовать членство ASP.NET в подпрограммах?

Кроме того, большинство приложений (root и sub) будут использовать стороннюю библиотеку (инфраструктуру данных).

2.) Как я могу ссылаться на библиотеку в корневом проекте и «использовать» указанную библиотеку в подпрограммах?

Спасибо за любые предложения!

Ответы [ 2 ]

2 голосов
/ 04 мая 2009

Создайте свой общий код в проектах библиотеки классов, которые можно использовать из нескольких веб-проектов. Что касается поставщика членства, я думаю, вам нужно будет сохранить данные членства во внешнем экземпляре SQL (который может быть на том же сервере), а затем просто использовать те же строки подключения для доступа к ним в каждом проекте.

1 голос
/ 04 мая 2009

Членство предназначено для работы с одним или несколькими приложениями. У вас может быть экземпляр базы данных (отдельно от любых баз данных для любого из ваших приложений), в котором могут храниться данные о членстве каждого из ваших приложений. Если вы хотите, чтобы все ваши приложения использовали одинаковые данные о членстве, укажите идентичное applicationName (и connectionString) при определении членства в web.config .

каждого приложения.

Что касается второй части вашего вопроса, ответ, размещенный tvanfosson (вместе с комментариями), должен привести вас на правильный путь.

Edit (@ ropstah Comment): Ах, я не учел этого. В этом случае вы захотите внедрить Single Sign-on (SSO) . Масуд Табатабаи опубликовал статью на ASPAlliance.com , в которой рассказывается о процессе. Кроме того, ответ, предоставленный Китом Руллом на этот вопрос переполнения стека , также может помочь.

...