我正在写一个类似亚马逊的网站。每个用户都可以开店。
因此数据库有一个Shop
表,其主键是id。每个用户最多可以打开一个商店。
我知道我可以使用Profile Provider
。我一直在用它来保存用户的地址,电话和那种信息。但我认为将商店ID保存到Profile不是一个好主意,因为我不能使用SQL来找出商店所有者的名称,这使得我无法使用现成的数据控件而无需代码 - 在商店页面上完成我的功能。
那么我可以修改aspnet_Users
表添加shop
字段,该字段是Shop
表的外键吗?它会引起问题吗?
或者我构建了另一个User
表并将shop
字段放入其中?
或者你有做这类事情的最佳做法吗?
答案 0 :(得分:3)
请勿触摸 aspnet_Users
。它由ASP.NET的成员资格提供商管理,将来可能会更改,很多视图和存储过程都会触及它等。
我建议将所有配置文件数据保存在不同的表中,包括名称,地址等等。这也包括每个用户的ShopID
(作为一对一的关系,我认为这是优选的,尽管你可以像@Tim建议的那样做多对多)。