开发者

When using ASP.Net Membership plus an additional table to store user Information, should I link other tables to aspnet_Users or my own Table?

I'm using ASP.Net membership to secure my site and I have a question about how to store extra user information. By googling and reading other questions I think the 3 accepted approaches to storing additional data

  1. Profile framework - generally regarded as too restricting
  2. Custom Profile provid开发者_StackOverflow社区er - a little bigger than I want to attempt at the moment
  3. Using another table with user information - the choice I'm following

I've created a new table in addition to the ASP.Net membership tables named User_Information that has a one-to-one foreign key to aspnet_Users. When I create a new table to store information linked to a user (e.g. comments, votes, etc) should I set the foreign key to point to aspnet_User or my User_information table?

thanks


It depends on the nature of your queries.

The Membership provider will give you easy access to the user ID column from the aspnet_Users table. It will take an extra query to get the ID from your table.

However, if most of your queries require joining your User_Information table anyway, then it may not really matter.


I use the same way as you did. I have a weak-reference without any physical relationship between those two tables. It works perfectly fine for me. To manage dependencies you can wrap the database operations within a transactions for both the tables.

I recommend not to create any foreign key and continue with this design.


I pick aspnet_User table. It is, after all, considered to be the "primary" table for user info, no?

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜