繁体   English   中英

没有导航属性的外键实体框架数据注释

[英]Entity framework data annotation of foreign key without a navigation property

我有以下表格定义:

public partial class ClientClassification
{
    [Key, Column(Order = 0)]
    public long ClientId { get; set; }

    [Key, Column(Order = 1)]
    public ClientClassificationEnum ClientClassificationType { get; set; }

    [ForeignKey("ClientId")]
    public virtual Client Client { get; set; }
}

ClientIdClient表中的外键。 这是一对多的关系(一个客户可以有很多分类)。 有什么办法可以省略Client导航属性,但仍然声明此外键关系? 所以像这样:

public partial class ClientClassification
{
    [Key, Column(Order = 0)]
    [ForeignKey("Client.ClientId")]
    public long ClientId { get; set; }

    [Key, Column(Order = 1)]
    public ClientClassificationEnum ClientClassificationType { get; set; }
}

由于“类”之间将没有关系,而您仍然想在dtaabase上创建关系,因此我将使用迁移脚本来进行此操作(并且在类上没有注释)。

如果您仍然希望在类上具有注释(由于我现在无法想象的原因),则可以声明一个受保护的Client属性(通过这种方式,您将声明Client导航属性,但不会除继承的类以外的任何人都可以访问)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM