- он использует активный каталог в качестве хранилища.

ботка нового приложения на asp.net 4 Я должен принять решение, как использовать API членства в MS SQL вместе со своими собственными данными в базе данных MS SQL. Во-первых, мне нужно более гибко хранить и получать доступ к данным профиля пользователя, чем поддерживает поставщик профилей. Во-вторых, я хотел бы связать другую пользовательскую информацию (например, Заказы).

Независимо от того, где вы храните свои таблицы aspnetdb (в отдельной базе данных или в одной базе данных с вашими данными), проблема заключается в том, как сохранить ваши данные синхронизированными.

После исследования я вижу следующие актуальные варианты:
1. Внешний ключ UserId от asp_Users (предлагается вэто руководство).
2. Нет внешнего ключа - используйте транзакции (предлагаетсяВот).
3. Нет внешнего ключа - используйте настроенный AccountController (какой бы он ни был, предлагаетсяВот).
4. Дополнительная таблица, которая связывает Членский UserId (uid) с пользовательским UserId (int).
5. ...

С одной стороны, мне нравится первое решение, так как оно довольно простое и предлагается в официальном учебнике asp.net.

С другой стороны, противники вполне разумно отмечают, что использование внешних ключей нарушает общее представление о поставщиках, которые должны помогать разделять проблемы и быть взаимозаменяемыми. Но, к сожалению, они не слишком углубляются в детали реализации, поэтому не очень легко оценить эти предложения с точки зрения актуальности и простоты реализации.

Так что же лучше всего подойти к этому? Кроме того, как будет выглядеть реализация? Было бы достаточно использовать только дополнительный код ADO.NET или LINQ и т. Д., Или стоит реализовать собственный членство и / или поставщика профилей?

Заранее спасибо.

Ответы на вопрос(1)

Ваш ответ на вопрос