如何在EntityFramework Codefirst中创建外键? [英] How to Create Foreign Key in EntityFramework Codefirst?
本文介绍了如何在EntityFramework Codefirst中创建外键?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我们如何创建数据库如下所示 EntityFramework CodeFirst Appraoach :
注意:
我已经创建了身份自动增加2并且它是所有表的外键。
我们如何为外键和唯一键编写FluentAPI?
创建 表 [dbo]。[UserAccount]
(
[ UserID] int 身份( 1 ,< span class =code-digit> 2 ),
[电子邮件] nvarchar ( 50 ),
[用户名] nvarchar ( 50 ),
[密码] nvarchar ( 50 ),
约束 [PkUserAccount] 主要 密钥([UserID]),
约束 [UkEmail] 唯一([电子邮件]),
约束 [UkUserName] 唯一([UserName] )
)
Go
创建 表 dbo.UserPersonal
(
[UserID] int ,
[名称] nvarchar ( 50 ),
[国籍] nvarchar ( 50 ),
[Location] nvarchar ( 50 ),
[DoB] date ,
[Mobile] nvarchar ( 50 ),
[性别] 位,
Co nstraint [PkUserPersonal] 主要 密钥([UserID]),
约束 [FrUserIDPersonal] 外来 键([UserID] )参考 dbo。[UserAccount]([UserID]) 删除 级联,
约束 [UKMobile] 唯一([手机])
)
Go
创建 表 dbo.UserProfessional
(
[UserID] int ,
[经验] Int ,
[行业] nvarchar ( 50 ),
[FunctionalArea] nvarchar ( 50 ),
[KeySkills] nvarchar ( 50 ),
[恢复] nvarchar ( 50 ),
约束 [PkUserProfessional] 主要 Key ([UserID]),
Constraint [FrUserIDProfessional] Foreign 密钥([UserID])参考 dbo。[UserAccount]([UserID]) delete cascade ,
)
GO
解决方案
试试这个:
http://msdn.microsoft.com/en-us/library/vstudio/ee828425%28v=vs.100%29.aspx [ ^ ]
http: //blogs.msdn.com/b/efdesign/archive/2009/03/16/foreign-keys-in-the-entity-framework.aspx [ ^ ]
how can we create Database looks like as follows in EntityFramework CodeFirst Appraoach:
Note:
I have created identity auto incremented by two and it is foreign key for all table.
How can we write FluentAPI for foreign Key and unique key?
Create Table [dbo].[UserAccount]
(
[UserID] int Identity(1,2),
[Email] nvarchar(50),
[UserName] nvarchar(50),
[Password]nvarchar(50),
Constraint [PkUserAccount] Primary Key([UserID]),
Constraint [UkEmail] Unique([Email]),
Constraint [UkUserName] Unique([UserName])
)
Go
Create Table dbo.UserPersonal
(
[UserID] int,
[Name] nvarchar(50),
[Nationality] nvarchar(50),
[Location] nvarchar(50),
[DoB] date,
[Mobile] nvarchar(50),
[Gender] bit,
Constraint [PkUserPersonal] Primary Key([UserID]),
Constraint [FrUserIDPersonal] Foreign Key([UserID]) references dbo.[UserAccount]([UserID]) on delete cascade,
Constraint [UKMobile] Unique([Mobile])
)
Go
Create Table dbo.UserProfessional
(
[UserID] int,
[Experience] Int,
[Industry] nvarchar(50),
[FunctionalArea] nvarchar(50),
[KeySkills] nvarchar(50),
[Resume] nvarchar(50),
Constraint [PkUserProfessional] Primary Key([UserID]),
Constraint [FrUserIDProfessional] Foreign Key([UserID]) references dbo.[UserAccount]([UserID]) on delete cascade,
)
GO
解决方案
Let try this:
http://msdn.microsoft.com/en-us/library/vstudio/ee828425%28v=vs.100%29.aspx[^]
http://blogs.msdn.com/b/efdesign/archive/2009/03/16/foreign-keys-in-the-entity-framework.aspx[^]
这篇关于如何在EntityFramework Codefirst中创建外键?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文