2015-06-17 18 views
1

我正在开发一个博客项目,我想发布内容,发表评论和类似的内容。MyDbContext和IdentityDbContext

我是新来的身份,我知道我有很多东西要学。我想问的是如何建立身份表和我的表之间的关系。

我有4个实体:职位,评论,类别和标签(我知道如何映射到对方),但我想知道,例如,如何将邮件和评论连接到标识AspNetUser表。

还有一件事:我应该将我的表添加到Identity数据库还是应该为他们创建自己的数据库?

回答

0

我应该将我的表添加到Identity数据库还是应该为他们创建我自己的 数据库?

不,你应该保持你的项目特定的表到单独的数据库(有时称为IP数据库)。 IP数据库和身份数据库之间的关系只是一个用户或会员ID。通常,您的IP数据库中将包含一个用户表,其中包含用户或成员身份证以及其他用户详细信息(地址等)。

如何将帖子和评论连接到标识AspNetUser表?

与用户表类似,您可以为其他与用户相关的实体创建表。例如,我将创建包含UserId + PostId的UserPosts,以便由特定用户查找帖子。

或者您可以在现有表格中添加一个userId列。例如。评论将有userId列表示此评论由该用户进行。

+0

真的吗?如果用户数据存储在单独的数据库中,如何处理用户相关的数据?您永远无法在一次往返中获取数据及其相关的用户数据。你的回答对我没有意义。 – paulpitchford

+0

@paulpitchford - 我的回答受我的Membership和ASPNETDB经验的影响。 ASPNETDB存储用户的身份和角色信息。它由Membership用于身份验证和授权目的。应用程序在存储应用程序/业务特定详细信息的数据库(IP DB)上创建它。两个数据库之间的链接是MembershipId。对于服务请求,您主要从IP DB获取数据。希望这可以澄清你的疑问。 – SBirthare

+0

好的,但如何为我的实体创建不同的数据库,以及如何将身份表与我的数据库表连接起来?例如如何连接用户与邮政? – McCorn

相关问题