Отображение типа данных Oracle Long в ядро ​​Entity Framework - PullRequest
0 голосов
/ 06 ноября 2019

У меня проблема при отображении столбца типа данных LONG в Oracle 12c. Мой DTO - это поле с именем "json", которое System.String, как сказано в здесь !

Я даже пытался использовать (Old-School) OracleDataAdapter библиотеку, норезультат тот же, Пустой String

Также попытался отобразить тип данных LONG в объект, изменив тип String на мой ClientDetail тип json

public void Configure(EntityTypeBuilder<ClientEntity> builder)
{
    //... Other code...
    builder.Property(e => e.Json).HasConversion(
        v => JsonConvert.SerializeObject(v),
        v => JsonConvert.DeserializeObject<ClientDetail>(v));
}

С. ..

[Column("JSON")]
public ClientDetail Json { get; set; }

Но все еще получаю null объект


Уже моя конфигурация такова:

c #

var entity = await db.Client.SingleOrDefaultAsync(t => t.Code == customCode);

[Table("TBL_CLIENT", Schema = "SCH")]
public class Client 
{
    [Column("NAME")]
    public string Name { get; set; }

    [Column("DOCUMENT_NUMBER")]
    public string Document { get; set; }

    [Column("JSON")]
    public string Json { get; set; }
}

Таблица Oracle

CREATE TABLE SCH.TBL_CLIENT
(
  CLIENT_ID              NUMBER(10)             NOT NULL,
  NAME                   VARCHAR2(20 BYTE)      NOT NULL,
  DOCUMENT_NUMBER        VARCHAR2(20 BYTE)      NOT NULL,
  JSON                   LONG
)

Другие поля таблицы возвращают его значение, но столбец json возвращает Empty.

...