Я хочу создать сайт каталога товаров с использованием Sitecore, который позволит пользователям сохранять товары в настраиваемых списках, которыми они могут управлять при использовании сайта.
Эти списки потенциально могут содержать сотни элементов каждый, поэтомустандартные атрибуты настраиваемого профиля могут выйти из-под контроля, поэтому я подумал, что лучше использовать внешний источник данных.
Есть ли примеры того, как реализовать поставщика настраиваемого профиля, который хранит во внешней базе данных sql?Есть ли лучший способ сделать это?
ОБНОВЛЕНИЕ Чтобы расширить это.Чтобы проверить, я скачал пример поставщика таблиц профилей SQL здесь: http://code.msdn.microsoft.com/Using-the-SQL-Table-4c220996 и запустил его с помощью.Затем я добавил ссылку на этого провайдера в проект Sitecore.В файле web.config у меня есть:
<profile defaultProvider="switcher" enabled="true" inherits="Sitecore.Security.UserProfile" >
<providers>
<clear />
<add name="sql" type="System.Web.Profile.SqlProfileProvider" connectionStringName="core" applicationName="sitecore" />
<add name="TableProfileProvider"
type="Microsoft.Samples.SqlTableProfileProvider, SQLTableProfileProviderCS"
connectionStringName="myProfileConnString" table="aspnet_Profile2"
applicationName="/" />
<add name="switcher" type="Sitecore.Security.SwitchingProfileProvider, Sitecore.Kernel" applicationName="sitecore" mappings="switchingProviders/profile" />
</providers>
<properties>
<clear />
<add type="System.String" name="SC_UserData" />
</properties>
</profile>
и в SwitchingProviders:
<profile>
<provider providerName="TableProfileProvider" storeFullNames="false" wildcard="%" domains="mydomain" />
<provider providerName="sql" storeFullNames="true" wildcard="%" domains="*" />
</profile>
и в /Security/Domains.config:
<domain name="mydomain" ensureAnonymousUser="false"/>
Если япопытайтесь получить профиль текущих пользователей и получить доступ к настраиваемым атрибутам, используя тот же метод, что и в примере проекта SQL Table Profile Provider, настраиваемый профиль всегда имеет значение null.
Я должен что-то упустить в своей конфигурации.Любые предложения будут ценны.