检查以下 Db 脚本:
CREATE TABLE tlogdata
(
logentryid INT NOT NULL, -- PK
[key] NVARCHAR(25) NOT NULL, -- PK
value NVARCHAR(MAX) NOT NULL
)
CREATE TABLE tlogentry
(
logentryid INT IDENTITY(1,1) NOT NULL, -- PK
[message] NVARCHAR(4000) NOT NULL
)
tlogentrydata 有一个复合 PK => logentryid 和密钥。logentryid 引用 tlogentry.logentryid 列
现在我想做的是像这样创建我的模型:
public class LogEntryData
{
public string Key { get; set; }
public string Value { get; set; }
}
public class LogEntry
{
public int Id { get; set; }
public string Message { get; set; }
public List<LogEntryData> Data { get; set; }
}
如您所见,LogEntryData 不包含“LogEntryID”作为属性。所以我的问题是如何将这两个类映射(使用流利的 API)到我的表中?我不知道是否甚至可以告诉 EF LogEntryData 具有复合 PK 而不将其中一列公开为公共属性(在这种情况下,LogEntryId 在 LogEntryData 类中不存在,但在 tlogentrydata 表中作为 logentryid 列存在)
先感谢您!