Фильтрация на объекте/листовом столбце? [закрыто]C#

Место общения программистов C#
Ответить
Anonymous
 Фильтрация на объекте/листовом столбце? [закрыто]

Сообщение Anonymous »

В нашей базе данных SQL Server у нас есть таблица с этим макетом: < /p>

Код: Выделить всё

public partial class Measurement
{
public int Measurements_PK { get; set; }

public object? Value { get; set; }

public String Name_UQ { get; set; }

public string DataType { get; set; } = null!;
}
Определение значения SQL - это [значение] [SQL_VARIANT] NULL , а определение модели - это entity.property (e => e.value) .hascolumntype ("sql_variant"); . Обычно мы запустим запрос в поисках конкретного измерения для некоторой конкретной записи или группы записей: < /p>

Код: Выделить всё

select *
from Measurement
where Name_UQ = 'someMeasurementName'
and Value = 12345
Когда я попытался сделать это в EF Core, я сталкиваюсь с проблемой, где C# ожидает очень специфического типа, и если я пытаюсь внедрить этот тип в коде C#, полученный SQL, который генерирует EF -ядро, будет пытаться отменить каждую ценность вместо того, что с name_uq я хочу, чтобы в SQLEXCECTERE (Int32)a.Value == unitid)
.ToList();
< /code>
Для ясности, "A" вот просто анонимный тип. < /p>
Как я могу выполнить эту операцию в EF Core? Это с VS22 17.13.6, Windows 11, C#, EF Core 9.0.4 против SQL Server 2019 15.0.4415.2 (x64).

Подробнее здесь: https://stackoverflow.com/questions/796 ... ted-column
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»