Можно ли сохранить два профиля с помощью модели поставщика профилей?
У меня есть веб-сайт, который должен хранить два набора пользовательских данных в отдельных хранилищах данных. Первый набор данных используется CMS SiteCore и содержит информацию о пользователе. Второй набор данных используется приложением персонализации, которое хранит свои собственные пользовательские данные. Причина, по которой они не хранятся вместе в одном объекте профиля, заключается в том, что приложение персонализации используется на нескольких веб-сайтах, которые не все используют SiteCore.
Я могу создать несколько провайдеров профилей - в настоящее время у меня есть один из SiteCore и пользовательский провайдер, которого я написал, и оба они работают изолированно. Проблема существует, когда вы пытаетесь настроить оба в одном файле web.config. Кажется, вы можете указать только один объект профиля в файле web.config, а не один для каждого поставщика. Это означает, что независимо от того, какой поставщик используется, платформа.Net отправляет через объект профиля, указанный в параметре "наследует" в разделе профиля файла web.config.
Мои вопросы: возможно ли указать отдельный объект профиля для каждого поставщика профилей? Если да, то как и где это указано?
-редактировать-
Следует отметить, что в двух наборах данных нет дублирования данных, они взаимоисключающие (исключая адрес электронной почты). Данные SiteCore используются исключительно для этого веб-сайта, но у нас есть данные профиля всей компании, которые охватывают все наши приложения, поэтому нам необходим отдельный второй объект профиля.
-/редактировать-
Спасибо ник
2 ответа
Sitecore позволяет вам использовать несколько провайдеров с помощью переключателя, а свойства профиля, которые не обрабатываются одним провайдером, могут передаваться другим провайдерам.
Так работают провайдеры профилей CRM Security и Sitecore для Salesforce(это продукт, в котором я реализовал провайдер пользовательских профилей).
Ознакомьтесь с документацией по Sitecore: Низкоуровневая безопасность и пользовательские провайдеры Sitecore CMS
Этот подход звонит мне в тревогу. Вы уже намекнули, что рассматривали возможность хранения двух наборов данных в одном месте. Я бы рекомендовал повторно посетить этот подход. Вы смотрели на создание двух представлений поверх одного хранилища данных, одно с дополнительными данными персонализации, а другое без? Вы, очевидно, достаточно компетентны, чтобы сделать это, если вы можете написать своих собственных провайдеров.
В противном случае вы рискуете столкнуться с несинхронизированными данными профиля.