buser,
Приведу в качестве примера код TSQL:
Есть таблица с полем varbinary(max) (если поле типа image, то будет ошибка).
Выполную следующий код
update t_AUVersions
set Binary = 0x636F6F6C
where id = 7
select binary
from t_AUVersions
where id = 7
update t_AUVersions
set Binary = Binary + 0x888
where id = 7
select binary
from t_AUVersions
where id = 7
в качестве ответа получаю:
0x636F6F6C
----
0x636F6F6C0888
Вот суть задачи. Порционное добавление двоичных данных к определённой записи при помощи Linq.
Я создал DataContext. Создал экземпляр t_AUVersion и записал его в базу сделав Submit()
t_AUVersion ver = new t_AUVersion()
{
Id_file = db.t_AUFiles.Where(f => f.Key == _key).Select(f => f.Id).FirstOrDefault(),
UploadDate = DateTime.Now,
FileLastWriteTIme = file.LastWriteTime,
Version = FileVersionInfo.GetVersionInfo(file.FullName).FileVersion ?? DBNull.Value.ToString(),
Size = Convert.ToInt32(file.Length),
IsActive = active,
IsDel = false
};
db.t_AUVersions.InsertOnSubmit(ver);
db.SubmitChanges();
Теперь мне к \той записи надо прибавлять поступающие двоичные данные. /то я пытаюсь сделать так
ver.Binary = ver.Binary + partBytes;
db.SubmitChanges();
Получаю ошибку:
Operator '+' cannot be applied to operands of type 'System.Data.Linq.Binary' and 'byte[]'