Я пытаюсь перевести это в DataAnnotations
HasOptional(x => x.ParentEntity)
.WithMany(parentEntity => parentEntity.childrenEntities)
.HasForeignKey(childrenEntity => childrenEntity.ParentEntityId)
.WillCascadeOnDelete(false);
Вот моя проблема, у меня есть сущность, которая имеет ссылку на себя.
public class Product
{
[Key]
public int ProductId {get; set;}
public int? ProductParentId {get; set;}
[ForeignKey("ProductParentId")]
[InverseProperty("childrenProducts")]
public virtual Product ParentProduct { get; set; }
[ForeignKey("ProductParentId")]
public virtual List<Products> childrenProducts{ get; set; }
}
Но я продолжаю получать сообщения о том, что недопустимые отношения были определены с использованием InversePropertyAttribute и ForeignKeyAttribute и что значения отличаются.
Вот мой стол:
Таблица продуктов
ProductId ProductName ProductParentId
1 Test Null
2 Test 1 1
3 Test 2 1
Что я ожидаю, так это получить продукты и их детей. Есть ли способ сделать это?
Заранее спасибо.