Навигация по недвижимости в EF - PullRequest
1 голос
/ 28 марта 2012

В моем классе 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 должно указывать на одну фотографию в коллекции фотографий.

ProducsConfiguration

Чтобы сгенерировать схему базы данных, используйте следующую конфигурацию:

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"));
        ...???...
    }
}

Вопрос

Как бы настроить (ИСПОЛЬЗОВАТЬ FLUENT КОНФИГУРАЦИЮ EF) для связи свойства photos в качестве ссылки на одну из фотографий в коллекции Photos ??

Спасибо!

1 Ответ

0 голосов
/ 30 марта 2012

Если предположить, что это опечатка, а вы ссылаетесь на свойство Photo, вам больше ничего не нужно делать.

По умолчанию Photo будет ссылкой на фотографию. Технически, у Фотографии нет , чтобы быть частью коллекции Photos (и EF не может это проверить), но она выполнит то, что вам нужно (имея "основную" фотографию)

...