Платформа объекта и VARBINARY

Пожалуйста, попробуйте

WHERE (A.PN IN ('RCF6709') or A.PN IS NULL )
7
задан Marcus L 3 March 2009 в 09:52
поделиться

2 ответа

A varbinary преобразуется в поле byte [] в Entity Framework, что означает, что вы можете проверить свойство Length для массив:

int fieldSize = entity.MyVarBinaryField.Length;

Как упоминалось в tster : В запросе LINQ to Entities вы можете вызвать метод DataLength класса SqlFunctions , который будет преобразовывать в вызов функции DATALENGTH в сгенерированном операторе SQL. Это работает только с SQL Server и Entity Framework 4 или новее:

int? fieldSize = repository.Entity
  .Select(e => SqlFunctions.DataLength(e.MyVarBinaryField)).Single();
19
ответ дан 6 December 2019 в 06:25
поделиться

Я решил его путем выполнения другого запроса, получения DATALENGTH () ячейки. Не самый гладкий путь, но это работает.

Я все еще интересуюсь слушанием, если кто-либо может придумать ответ для этого все же.

0
ответ дан 6 December 2019 в 06:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: