Сопоставьте отношение таблицы «один к одному» с одним объектом, используя entity framework 4.1 Code First approach

#entity-framework-4.1

#entity-framework-4.1

Вопрос:

У меня есть отношение «один к одному» в базе данных между таблицами 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])
  

Я хочу сопоставить эти две таблицы с одним объектом, используя идентификатор учетной записи внешнего ключа, как показано ниже.

 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