Это действительно зависит от ваших требований, которые не совсем понятны.Если вы всегда хотите, чтобы ваши данные обновлялись в другой базе данных, то синхронизация путем копирования всей таблицы - не лучший способ.
Если вы не возражаете, что вы получите имена пользователей в более поздний момент времени, тогда синхронизация - это путь.Например, если вы используете другую базу данных только для целей бизнес-аналитики, тогда простое задание, например, ночью, подойдет.Как сказал Кристоффер, для этого вам понадобится столбец UserName
из таблицы aspnet_User
.
Теперь, если вы хотите, чтобы он всегда был актуальным, у вас есть два варианта:
Хаки и не рекомендовано мной.Расширьте сохраненные процедуры, которые вызываются поставщиком членства по умолчанию, также обновляя другую базу данных.Например, вы можете изменить dbo.aspnet_Membership_CreateUser
.Проверьте в своей базе данных все хранимые процедуры членства в aspnet.
Реализуйте своего собственного поставщика членства, который вызывает ваши собственные хранимые процедуры или хранимые процедуры по умолчанию + дополнительные запросы для обновления другой базы данных.Этот - самая большая работа и будет моим выбором.Примеры пользовательских реализаций см. этот и этот.
Обе опции понадобятся вам, чтобы ознакомиться с членством asp.netинфраструктура.