1
我有以下情形:EF 4.3一對多的關係以最小的導航屬性
public class Person
{
public string Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public ICollection<PhoneNumber> PhoneNumbers { get; set; }
}
public class PhoneNumber
{
public int Id { get; set; }
public string Number { get; set; }
public string Type { get; set; }
}
這應該與數據庫中的一個模式,看起來像這樣:
CREATE TABLE [dbo].[Contacts]
(
[ContactId] NVARCHAR(50) NOT NULL,
[FirstName] NVARCHAR(150) NOT NULL,
[LastName] NVARCHAR(150) NOT NULL
)
CREATE TABLE [dbo].[PhoneNumbers]
(
[PhoneNumberId] INT IDENTITY(1,1) NOT NULL,
[ContactId] NVARCHAR(50) NOT NULL,
[PhoneNumber] NVARCHAR(20) NOT NULL,
[Type] NVARCHAR(1000) NOT NULL
)
而且我有兩個實現EntityTypeConfiguration的類。
public class PhoneNumberConfiguration : EntityTypeConfiguration<PhoneNumber>
{
public PhoneNumberConfiguration()
{
ToTable(TableName);
Property(e => e.Id).HasColumnName("PhoneNumberId");
Property(e => e.Value).HasColumnName("PhoneNumber");
Property(e => e.PhoneType).HasColumnName("Type");
}
}
public class ContactConfiguration : EntityTypeConfiguration<Person>
{
public ContactConfiguration()
{
ToTable("Contacts");
Property(contact => contact.Id)
.HasColumnName("ContactId");
}
}
從這個,我可以使用EF 4.3的流暢API指定的電話號碼和個人之間的外鍵是存儲在一個名爲的ContactID字段的電話號碼錶?
謝謝