EF中的属性导航参考

本文关键字:导航 参考 属性 EF | 更新日期: 2023-09-27 18:29:23

在我的produc班上,我有一组照片。该系列中的一张照片代表了主要产品的照片。

我的产品类别

public class Product
{
    public Guid ID { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    public virtual ICollection<Photo> Photos { get; set; }
    public virtual Photo Photo { get; set; }
}

属性photo必须指向照片集中的一张照片。

产品配置

要生成数据库的模式,请使用以下配置:

public class ProductConfiguration : EntityTypeConfiguration<Product>
{
    public ProductConfiguration()
    {
        HasKey(p => p.ID)
            .Property(p => p.ID)
            .IsRequired();
        Property(p => p.Name)
            .IsRequired()
            .HasMaxLength(65);
        HasMany(p => p.Photos).WithMany().Map(m => m.ToTable("ProductPhotos"));
        ...???...
    }
}

问题

用于将属性photos关联为集合Photos中的一张照片的引用的配置(使用EF的FLUENT configuration)将如何??

谢谢!

EF中的属性导航参考

假设这是一个拼写错误,并且您引用的是Photo属性,则无需执行其他操作。

默认情况下,Photo将是对照片的引用。从技术上讲,照片没有成为Photos集合的一部分(也没有办法让EF验证这一点),但它可以实现您所需要的(拥有"主"照片)