【问题标题】:Entity Framework Association without a database FK没有数据库 FK 的实体框架关联
【发布时间】:2026-01-07 03:55:02
【问题描述】:

假设我有两个表,Users 和 UserInformation。我想在两者之间创建一个关联或导航属性,不确定哪个是正确的术语。但是,我的数据库不包含外键,我的 dba 也不想在上面放一个,无论出于何种原因。

如何在两个实体之间建立关系?这将是一个 1 到 0..1,加入 UserID。我尝试过使用 GUI,每次运行代码时都会出现错误:

error 3027: No mapping specified for the following EntitySet/AssociationSet - UserUserInformation.

我做错了什么?

【问题讨论】:

    标签: entity-framework orm


    【解决方案1】:

    给定这样的表格:

    create table [User](ID int, UserName varchar(80) PRIMARY KEY(ID))
    create table UserInfo(ID int, UserID int NOT NULL, UserData varchar(80) PRIMARY KEY(ID))
    

    您创建关联,在 Users 和 UserInfo 之间创建一对多的关联,然后在关联属性中添加一个引用约束,其中用户作为主体,ID 作为主体键,用户 ID 作为从属属性键。

    【讨论】: