【发布时间】:2021-01-14 23:07:50
【问题描述】:
假设有两种类型的用户:
1- 卖家
2- 买家
每种类型都有其独有的属性。按照这个类比,买家会有购物车之类的东西,而卖家会有库存。买家无需拥有和库存等。
在定义我的 IdentityUser 实现时,
a) 它是否应该拥有所有属性(无论是买方还是卖方)并根据具有身份验证的用户的角色来限制对属性的访问?
b) 或者,有没有办法让角色拥有自己的属性?
我问这个是因为我的直觉告诉我在数据库中有空字段(即卖家与购物车项目无关,所以为什么要有空字段或具有这种关系的表)是一种不好的方式和这个一起去。
注意。我目前正在使用 .NET Framework,但是,如果最好(或更简单)的答案是在 .NET Core 上,那么升级没有问题,因为这是一个新项目。
编辑。真正的应用程序不是关于卖家和买家的,比这更复杂一些。对此进行扩展似乎不正确,因为核心问题是拥有两种用户,并且每种用户都以几乎完全不同的方式与应用程序交互。如果某人是第 1 类用户,他们不能要求成为第 2 类用户,他们必须注册一个新帐户。
【问题讨论】:
-
我不认为 IdentityUser 会支持按层次结构的表,但您可以添加具有 1-1 FK 的买方/卖方表。
-
@JeremyLakeman 是的,我在想类似的事情,但感觉就像在解决 Identity 而不是使用它......但我可能最终会这样做,谢谢你的建议
标签: c# asp.net asp.net-core asp.net-identity