Это моя первая попытка создать свою собственную модель EF, и я застрял при попытке создать поиск сопоставление таблиц с использованием Code First, чтобы я мог получить доступ:
myProduct.Category.AltCategoryID
У меня есть модели настройки и сопоставления, насколько я понимаю, но продолжаю получать Ошибка 0019: каждое имя свойства в типе должно быть уникальным. Имя свойства 'CategoryID' уже было определено
В моем коде представлены следующие модели:
[Table("Product", Schema="mySchema")]
public class Product {
[Key, DatabaseGenerated(System.ComponentModel.DataAnnotations.DatabaseGeneratedOption.None)]
public int ProductID { get; set; }
public int CategoryID { get; set; }
public virtual Category Category { get; set; }
}
[Table("Category", Schema="mySchema")]
public class Category {
[Key, DatabaseGenerated(System.ComponentModel.DataAnnotations.DatabaseGeneratedOption.None)]
public int CategoryID { get; set; }
public string Name { get; set; }
public int AltCategoryID { get; set; }
}
Я указал связи с:
modelBuilder.Entity<Product>()
.HasOptional(p => p.Category)
.WithRequired()
.Map(m => m.MapKey("CategoryID"));
Я пробовал еще несколько вещей, включая добавление аннотации [ForeignKey], но это приводит к ошибке, содержащей ссылку на поле ProductID.