在 AspNetUsers 中存储其他用户属性



向 AspNetUsers 表扩展/添加属性时,最佳做法是什么?(.Net Core 2.0(

1( 可以在 AspNetUsers 表中添加其他属性

2(你可以把东西放在索赔中

3( 您可以在属性中放置对另一个表的引用

4(您可以使用 user.id 并将其与更多数据一起存储在另一个表中

那么最佳实践是什么?

好吧,#1 和 #2 都是可以接受的,具体取决于特定情况。但是,#3 和 #4 是应避免的不良做法。这类似于UserProfile使用的机制 ASP.NET 成员资格,但这只是必要的,因为它是一个无法操纵的固定实体User。标识被设计为可扩展的,因此请扩展它。

在决定是否使用属性或声明方面,这主要取决于数据类型。如果你谈论的是像FirstNameLastName等东西——同样适用于每个用户的东西——我会选择属性。相反,我会对Facebook访问令牌等使用声明。将其存储在AspNetUsers表上将导致数据库的非规范化,因为许多用户对该列只有 NULL。声明本质上是特定于用户的和暂时性的。

相关内容

  • 没有找到相关文章

最新更新