Внешний ключ с константой в Fluent API - PullRequest
0 голосов
/ 07 июня 2018

Мне нужно загрузить требуемое множество связей из базы данных.Теперь моя проблема состоит в том, что ключ связанной таблицы состоит из трех ключей:

public partial class EnumValue
{
    [Key]
    [Column(Order = 0)]
    [StringLength(14)]
    public string EnumGroup { get; set; }

    [Key]
    [Column(Order = 1)]
    public byte EnumId { get; set; }

    [Key]
    [Column(Order = 2)]
    [StringLength(3)]
    public string Language { get; set; }

    [StringLength(50)]
    public string Description { get; set; }

}

В моем другом объекте у меня есть только одно свойство для заполнения внешнего ключа, остальные части являются константами, специфичными для этогоobject.
Я пытался построить отношения в EF6, но не могу заставить его работать со сборщиком моделей и Fluent API, используя константы вместо свойств:

modelBuilder.Entity<SupplierCondition>()                
    .HasRequired(t => t.ConditionTypeLookupRef)
    .WithMany()
    .HasForeignKey(t => new { "PArt", t.ConditionType, "EN" });

Как передать константы какзначение для внешнего ключа в Fluent API?

1 Ответ

0 голосов
/ 07 июня 2018

Вы не можете использовать там константные значения, потому что не присваивается какое-либо значение, вы информируете свободный API, какое свойство ссылается на другую таблицу, когда вы передаете «text», или 2, или новый List (), он выигралэто не свойства, я думаю, что вы можете разделить его на три таблицы и использовать в качестве тегов.Но я не могу видеть большую картину.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...