Хорошо, у меня есть группа из трех веб-приложений.
Мое существующее веб-приложение не имеет каких-либо настроек, оно просто использовало базовых провайдеров членства.
YAF.В NET используются нестандартные провайдеры, из-за которых возникла проблема с провайдером нестандартных профилей:
<profile enabled="true" defaultProvider="YafProfileProvider" inherits="YAF.Utils.YafUserProfile">
<providers>
<clear/>
<add connectionStringName="yafnet" applicationName="YetAnotherForum" name="YafProfileProvider" type="YAF.Providers.Profile.YafProfileProvider"/>
</providers>
</profile>
Поэтому я интегрировал это с моим основным сайтом, просто добавив ссылку на YAF.Utils
и inherits="YAF.Utils.YafUserProfile"
атрибут моего провайдера профиля на главном сайте.
Но сейчас я пытаюсь интегрировать BugNET в микс. BugNET имеет следующую настройку реализации членства:
<membership defaultProvider="ExtendedSqlMembershipProvider">
<providers>
<clear />
<add name="ExtendedSqlMembershipProvider" type="BugNET.Providers.MembershipProviders.ExtendedSqlMembershipProvider, BugNET.Providers.MembershipProviders.ExtendedSqlMembershipProvider" connectionStringName="BugNET" description="Extended Membership API" enablePasswordRetrieval="true" enablePasswordReset="true" requiresQuestionAndAnswer="false" applicationName="BugNET" requiresUniqueEmail="false" passwordFormat="Encrypted" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="7" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" passwordStrengthRegularExpression="" />
</providers>
</membership>
<profile enabled="true" automaticSaveEnabled="false" defaultProvider="MyProfileProvider">
<providers>
<clear />
<add name="MyProfileProvider" type="Altairis.Web.Providers.SimpleSqlProfileProvider, Altairis.Web.Providers" connectionStringName="BugNET" tableName="BugNet_UserProfiles" keyColumnName="UserName" lastUpdateColumnName="LastUpdate" />
</providers>
<properties>
<add name="FirstName" type="String" customProviderData="FirstName;nvarchar;100" />
<add name="LastName" type="String" customProviderData="LastName;nvarchar;100" />
<add name="DisplayName" type="String" customProviderData="DisplayName;nvarchar;150" />
<add name="IssuesPageSize" type="Int32" defaultValue="10" customProviderData="IssuesPageSize;int" />
<add name="NotificationTypes" type="String" defaultValue="Email" customProviderData="NotificationTypes;nvarchar;255" />
<add name="PreferredLocale" type="String" defaultValue="en-US" customProviderData="PreferredLocale;nvarchar;50" />
<add name="SelectedIssueColumns" type="String" defaultValue="" customProviderData="SelectedIssueColumns;nvarchar;50" />
</properties>
</profile>
Каким образом я должен объединить все три web.configs?
Моя цель состоит в следующемструктура приложения:
- www.website.com [Основной сайт]
- forum.website.com YAF.NET
- tracker.website.com BugNET
И все три интегрированы под одним ASP.NET Модель членства.
Для этого мне, очевидно, нужно
- Использовать один и тот же ключ машины во всех файлах веб-конфигурации, или я прочитал?
- Я думаю, что-то было сказано всем трем приложениям, что такое "веб-корень"?Например, установив "www.website.com"
- Слияние профилей членства, как бы я этого достиг, я где-то читал, что YAF 'Реализация наследования от своего провайдера пользовательских профилей переопределяет все, что помещено в узел
properties
раздела profile
.У меня нет проблем с редактированием их реализации или исходного кода.Должен ли я, возможно, редактировать в YAF.Utils.YafUserProfile пользовательские свойства, которые есть в реализации BugNET , и, возможно, также переименовать его как нечто более адекватное, и, возможно, поместить его в свое основное решение для веб-сайта? - А как насчет "расширенного поставщика членства" BugNET , похоже, использует?я должен просто проверить это как есть и выяснить, совместимы ли они?Использование разных реализаций в разных решениях, совместимо ли это?
- Есть ли что-то еще, что я мог бы упустить?
В дополнительном примечании я должен упомянуть, что я собираюсь иметьспециальная папка App_Shared
, которая будет в основном проекте веб-сайта, и svn-external для YAF.NET и BugNET .Там я собираюсь разместить главную страницу Base, от которой должны наследоваться все три приложения, поэтому я могу поделиться некоторыми очень основными деталями, такими как верхний и нижний колонтитулы и SiteMap.
Любая помощь приветствуется, спасибо!