尝试使用 DbMetal(作为 DbLinq 的一部分)创建 C# 文件时,出现以下错误:
DbMetal:序列包含多个元素
它仅在我引用多个外键作为主键的一部分时出现。以下是我的表的 DDL 导致问题:
CREATE TABLE [QuestionChoice]
(
[QuestionaireID] INTEGER NOT NULL,
[QuestionNumber] INTEGER NOT NULL,
[ChoiceNumber] INTEGER NOT NULL,
[Wording] VARCHAR
(
100
)
NOT NULL,
PRIMARY KEY
(
[ChoiceNumber],
[QuestionNumber],
[QuestionaireID]
),
FOREIGN KEY
(
[QuestionNumber],
[QuestionaireID]
)
REFERENCES [Question]
(
[QuestionNumber],
[QuestionaireID]
)
)
我用来设置我的 SQLite 数据库的工具是 SQLite Studio。我设置了一个表约束来设置外键。
如果我单独(每个项目)设置外键而不是作为表约束,生成的类对 Question 表有多个引用,在尝试插入表时会导致多个引用和错误。