Неявное преобразование типа данных nvarchar в varbinary (max) недопустимо. Используйте функцию CONVERT для выполнения этого запроса

70
6

Следуйте за кодом:

byte[] image1 = ConvertTo.Bytes(Request.Files[0]);
byte[] image2 = null;

ctx
.Users
.Where(x => x.Id == 1)
.Update(x => new User()
{
ImageByte1 = image1,
ImageByte2 = image2
});

Определение таблицы:

ImageByte1 varbinary (MAX) Разрешить nulls? правда

ImageByte2 varbinary (MAX) Разрешить nulls? правда

Я использую это здесь: http://entityframework-plus.net/

Только проблема, если я устанавливаю значение null в ImageByte2. Следующая ошибка:

Неявное преобразование типа данных nvarchar в varbinary (max) недопустимо. Используйте функцию CONVERT для выполнения этого запроса

Теперь я определяю ImageByte1 и ImageByte2 как null, он нормально ImageByte1 а ImageByte2 и ImageByte2 отличные от нуля, также обновляют.

Любое решение?

спросил(а) 2017-11-11T02:26:00+03:00 2 года, 11 месяцев назад
1
Решение
59

Проблема уже исправлена с помощью самой современной версии.

Nuget: https://www.nuget.org/packages/Z.EntityFramework.Plus.EF6/

ответил(а) 2017-11-29T16:08:00+03:00 2 года, 10 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема