Как отобразить SQL_VARIANT в Entity Framework 6? - PullRequest
0 голосов
/ 03 июля 2019

Сначала я использую базу данных Entity Framework 6. Уже была разработана база данных, и мне нужно использовать ее для создания API. В таблицах severl [sql_variant] использовался как тип столбца. Когда я добавил платформу сущностей, все столбцы [sql_variant] были проигнорированы с предупреждением о том, что для этого типа нет сопоставления!

Я попытался вручную добавить столбец [sql_variant] с типом объекта и отобразить его. Но я получаю его значение всегда ноль!

//The name of my [sql_variant] column is Value.
[Column("Value", TypeName = "sql_variant")]
[Required]
public object Value { get; set; }


//In the context class I tried to add also the following.
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
 modelBuilder.Entity<MeasurementData>();
 modelBuilder.Properties<MeasurementData>();
}

Я все еще получаю следующее исключение:

System.NotSupportedException
  HResult=0x80131515
  Message=The specified type member 'Value' is not supported in LINQ to Entities. Only initializers, entity members, and entity navigation properties are supported.
  Source=<Cannot evaluate the exception source>
  StackTrace:
<Cannot evaluate the exception stack trace>
...