powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Linq to Sql Update Bunary field
11 сообщений из 11, страница 1 из 1
Linq to Sql Update Bunary field
    #38629067
Алексей Ку.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!

У меня есть DataContext. Создаю экземпляр одной из сущностей и делаю Submit. Одно из полей типа Binary. Далее я хочу к нему добавить некоторый массив байтов.
Делаю вот так:

ver.Binary = ver.Binary + partBytes;
db.SubmitChanges();

Где ver - экземпляр сущности (объект класса из DataContext.

Получаю ошибку:
Operator '+' cannot be applied to operands of type 'System.Data.Linq.Binary' and 'byte[]'

Как быть?
...
Рейтинг: 0 / 0
Linq to Sql Update Bunary field
    #38629082
Алексей Ку.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Ку.,

Прошу прощения. В БД тип поля image.
...
Рейтинг: 0 / 0
Linq to Sql Update Bunary field
    #38629098
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://stackoverflow.com/questions/415291/best-way-to-combine-two-or-more-byte-arrays-in-c-sharp
Не до конца понятна изначальная задача...
...
Рейтинг: 0 / 0
Linq to Sql Update Bunary field
    #38629122
Алексей Ку.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buser,

Приведу в качестве примера код TSQL:

Есть таблица с полем varbinary(max) (если поле типа image, то будет ошибка).
Выполную следующий код
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
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()
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
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();



Теперь мне к \той записи надо прибавлять поступающие двоичные данные. /то я пытаюсь сделать так
Код: c#
1.
2.
ver.Binary = ver.Binary + partBytes; 
db.SubmitChanges();



Получаю ошибку:
Operator '+' cannot be applied to operands of type 'System.Data.Linq.Binary' and 'byte[]'
...
Рейтинг: 0 / 0
Linq to Sql Update Bunary field
    #38629132
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
потому что надо массив байт туда пихать уже подготовленный, т.е. вы должны сливать 2 массива в один
...
Рейтинг: 0 / 0
Linq to Sql Update Bunary field
    #38629163
Алексей Ку.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

А как подготовить тогда тот кусочек, который я собираюсь добавлять?
...
Рейтинг: 0 / 0
Linq to Sql Update Bunary field
    #38629175
Алексей Ку.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно конечно сделать при помощи хранимой процедуры. Но хотелось бы обойтись чисто Linq.
...
Рейтинг: 0 / 0
Linq to Sql Update Bunary field
    #38629211
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Ку.Можно конечно сделать при помощи хранимой процедуры. Но хотелось бы обойтись чисто Linq.
Не выйдет... Процедуру придется таки добавить в мудель...
...
Рейтинг: 0 / 0
Linq to Sql Update Bunary field
    #38629226
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Linq to Sql Update Bunary field
    #38629259
Алексей Ку.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buser,

Ну тот же смысл. Через хранимую процедуру. Я так пока и делаю. А мне вот очень хотелось обойтись только Linq.
...
Рейтинг: 0 / 0
Linq to Sql Update Bunary field
    #38629277
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
array1.Concat(array2)
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Linq to Sql Update Bunary field
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]