Преобразование значений при использовании объекта значения в ASP Core - PullRequest
0 голосов
/ 07 мая 2020

У меня есть этот агрегат:

    public string PropName { get ; private set ; }
    public CategoryTypeProp CategoryPropertyType { get ; private set ; }
    public Guid CategoryId { get ; private set ; }

, и это объект значения: CategoryTypeProp

    [Column("CategoryPropertyType")]
    public CategoryPropertyType CategoryPropertyType { get; set; }

    public CategoryTypeProp(CategoryPropertyType CategoryPropertyType)
    {
        this.CategoryPropertyType = CategoryPropertyType;
    }
    protected override IEnumerable<object> GetEqualityComponents()
    {
        yield return CategoryPropertyType;
    }

CategoryPropertyType - это перечисление.

Когда я возвращаю список of Aggregate он показывает мой список в следующем формате:

  "propName": "ship1",
  "categoryPropertyType": {
    "categoryPropertyType": 1
  },
  "categoryId": "7103e878-87c8-41fd-ce45-08d7ed03e721",
  "category": null,
  "id": "440ded43-9e71-4285-620b-08d7f1eac822",
  "isDelete": false
}

Но я хочу, чтобы он показал мне свойство categoryPropertyType в одной строке, например:

"categoryPropertyType": 1

Я написал эту конфигурацию:

        builder.Property(x => x.CategoryPropertyType).HasConversion(x => x.CategoryPropertyType, v => new CategoryTypeProp(v));
        builder.HasOne(x => x.Category).WithMany(x => x.CategoryProperties).HasForeignKey(x => x.CategoryId);

Как решить эту проблему?

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