我有两个已经创建好的表格,分别是Document
和DocumentStyle
。它们通过DocumentID
列之间存在一对一关系。然而,在Document
表中该列被称为Id
,而在DocumentStyle
表中被称为DocumentId
。
类似这样:
Document DocumentStyle
|----------| |----------------|
|Id - Key |<------>|DocumentId- key |
|Name-VChar| |Color -VChar|
|Desc-VChar| |Font VChar |
|----------| |----------------|
我在VS中遇到了以下错误
在类型“KII.Models.Document”的属性“DocumentStyle”上的ForeignKeyAttribute无效。在从属类型“KII.Models.Document”上未找到外键名称“DocumentId”。Name值应为逗号分隔的外键属性名称列表。
这是Document模型类代码的一部分。
[ForeignKey("DocumentId")]
public DocumentStyle DocumentStyle { get;set; }
编辑:
这是我的类的代码。
public class Document
{
[Key]
public int ID { get; set; }
public string Name { get; set; }
public int FundId { get; set; }
public int ClientId { get; set; }
[ForeignKey("FundId")]
public Fund Fund { get; set; }
[ForeignKey("ClientId")]
public Client Client { get; set; }
[ForeignKey("ID")]
public DocumentStyle DocumentStyle { get; set; }
public Document()
{
}
public Document(DocumentStyle documentStyle)
{
DocumentStyle = documentStyle;
}
}
public class DocumentStyle
{
public DocumentStyle()
{
}
[Key]
[DisplayName("Document ID")]
public int DocumentId { get; set; }
[ForeignKey("DocumentId")]
public Document Document { get; set; }
[DisplayName("Title Foreground Color")]
public string TitleForegroundColor { get; set; }
[DisplayName("Title Background Color")]
public string TitleBackgroundColor { get; set; }
[DisplayName("Title Font Family")]
public string TitleFontFamily { get; set; }
[DisplayName("Title Font Size")]
public string TitleFontSize { get; set; }
[DisplayName("Title Font Style")]
public string TitleFontStyle { get; set; }
[DisplayName("Title Font Weight")]
public string TitleFontWeight { get; set; }
[DisplayName("Title Text Decoration")]
public string TitleTextDecoration { get; set; }
[DisplayName("Section Title Foreground Color")]
public string SectionTitleForegroundColor { get; set; }
[DisplayName("Section Title Background Color")]
public string SectionTitleBackgroundColor { get; set; }
[DisplayName("Section Title Font Family")]
public string SectionTitleFontFamily { get; set; }
[DisplayName("Section Title Font Size")]
public string SectionTitleFontSize { get; set; }
[DisplayName("Section Title Font Styled")]
public string SectionTitleFontStyle { get; set; }
[DisplayName("Section Title Font Weight")]
public string SectionTitleFontWeight { get; set; }
[DisplayName("Section Title Text Decoration")]
public string SectionTitleTextDecoration { get; set; }
[DisplayName("Paragraph Foreground Color")]
public string ParagraphForegroundColor { get; set; }
[DisplayName("Paragraph Background Color")]
public string ParagraphBackgroundColor { get; set; }
[DisplayName("Paragraph Font Family")]
public string ParagraphFontFamily { get; set; }
[DisplayName("Paragraph Font Size")]
public string ParagraphFontSize { get; set; }
[DisplayName("Paragraph Font Style")]
public string ParagraphFontStyle { get; set; }
[DisplayName("Paragraph Font Weight")]
public string ParagraphFontWeight { get; set; }
[DisplayName("Paragraph Text Decoration")]
public string ParagraphTextDecoration { get; set; }
[DisplayName("Logo")]
public byte[] Logo { get; set; }
}
Document
是主体,所以请从DocumentStyle
属性中移除该属性。 - Ladislav Mrnka