juan_van Ответов: 3

Когда следует использовать ASP identity


Когда правильно использовать ASP.Чистая Идентичность?
Когда вы создаете один магазин или одно ролевое приложение, например музыкальный магазин, или сайт внутреннего процесса?

Должен ли я действительно использовать Identity, если я хочу добавить родительских клиентов, у которых есть более 1 пользователя? Если я хочу добавить коды скидок? Полный Опыт Покупок?

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

Что я уже пробовал:

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

3 Ответов

Рейтинг:
26

F-ES Sitecore

Identity really just handles users, logins, roles, and basic profile info. If you're building something like an ecommerce on top of that, you'll need to implement any additional logic yourself. Users are just rows in a database with a GUID ID so if you want to attach a basket to a user you just have a "UserID" field in your Basket table that contains the ID of the current user. If you want to group users into parents and children then again just create a table that has ParentID and ChildID and manage the data yourself. You can probably extend the user profiles to contain addresses but it's a bad idea. Again just create an Address table that contains the fields you need and store the UserID in that as well.


juan_van

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

Хорошо перейдем к коду :)

F-ES Sitecore

Я бы использовал его только для управления именем пользователя, паролем и ролями, а также для управления всем остальным в ваших собственных таблицах.

juan_van

Я думаю, что искал больше, чем свою собственную таблицу, я больше сомневался в настройках DbContext и в том, как связать их, не испортив объект IdentityDbContext.

Рейтинг:
2

MadMyche

Вы можете использовать Identity на простых сайтах, сложных сайтах или даже на сложном семействе сайтов.

Впервые я использовал его в младенчестве; и он использовался в сочетании с поставщиками профилей и ролей. Это было немного излишне, так как было только несколько пользователей.
Мой нынешний работодатель использует это навсегда; и наше последнее заклинание-это поставщик OpenID для корпоративного приложения электронной коммерции B2B, которое делает > 1 миллиард долларов США ежегодно.



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


Рейтинг:
2

juan_van

Сегодня я начал искать больше ответов и нашел это в лучших практиках Microsoft.
[ASP.NET руководство по архитектуре основных приложений]

Этот пример Microsoft на Github имеет 2 DbContext - многие из проектов, которые я нашел на Gihub и других, имеют

ProductDbContext : IdentityDbContext<AppUser...>
DbSet<Order> Orders {get; set;}


Спасибо за Ваш вклад!