使用实体框架 4.1 代码优先方法将一对一的表关系映射到单个实体
Posted
技术标签:
【中文标题】使用实体框架 4.1 代码优先方法将一对一的表关系映射到单个实体【英文标题】:Map one to one table relation to single entity using entity framework 4.1 Code First approach 【发布时间】:2011-06-08 15:37:34 【问题描述】:我在数据库中的表 Account 和 AccountProperties 之间存在一对一的关系,如下所示。
CREATE TABLE Account(
[ID] [int] IDENTITY(1,1) NOT NULL,
[AccountName] [varchar](255),
CONSTRAINT [PK_Account]
PRIMARY KEY CLUSTERED ([ID] ASC)
) ON [PRIMARY]
CREATE TABLE AccountProperties(
[AccountHistoryID] [int] IDENTITY(1,1) NOT NULL,
[AccountID] [int] NOT NULL,
[Password] [varchar](50) NULL
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[AccountProperties] WITH NOCHECK
ADD CONSTRAINT [FK_AccountProperties_Account]
FOREIGN KEY([AccountID]) REFERENCES [dbo].[Account] ([ID])
我想使用外键 AccountID 将这两个表映射到单个实体,如下所示。
public class Account
[Key]
public int ID get; set;
public string AccountName get; set;
public string Password get; set;
有人可以使用 fluent API 给我正确的映射吗?
【问题讨论】:
【参考方案1】:我在这里找到了解决方案:http://msdn.microsoft.com/en-us/library/bb896233.aspx
【讨论】:
以上是关于使用实体框架 4.1 代码优先方法将一对一的表关系映射到单个实体的主要内容,如果未能解决你的问题,请参考以下文章
实体框架代码优先关系 - 如何定义两个对象之间的关系:两个实体之间的可选一对一