Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
4 / 4 / 6
Регистрация: 02.12.2019
Сообщений: 277

Как в переменную записать результат запроса ?

07.04.2022, 09:33. Показов 2782. Ответов 34

Студворк — интернет-сервис помощи студентам
Необходимо в c# записать результат запроса в переменную.

Но записывает вот это
Название: Снимок экрана 2022-04-07 092741.png
Просмотров: 129

Размер: 3.9 Кб


Как мне получить вот такой результат ?
Символом очень много. Есть как и цифры так и буквы, конкретной в этой 65535 символов, но может быть намного и больше быть.



Вот то как я пытаюсь вывести
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 var arrya = App.DataBase.Books.Select(p => new
            {
                p.ElectronicVersion
            }).ToList();
 
 
 
            StringBuilder stringBuilder = new StringBuilder();
 
            foreach (var a in arrya)
            {
                if (a.ElectronicVersion != null)
 
                    stringBuilder.Append(a.ElectronicVersion);
            }
 
            MessageBox.Show(stringBuilder.ToString());
Вот проект Library.rar
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.04.2022, 09:33
Ответы с готовыми решениями:

Результат запроса записать в переменную
Подскажите выполняю запрос выборку, в результате получается строковое значение, которое необходимо записать в переменную, что предложите ...

Как записать данные с запроса в переменную
Добрый день вопрос такой к примеру у меня есть запрос который выдает значения 1,2,3 как переделать его так чтоб у меня был запрос с строкой...

Как записать значение запроса в переменную?
Добрый день! Помогите, пожалуйста. Который день уже бьюсь над этим вопросом и все никак.... Пишу на foxpro 9.0. Есть две таблицы в...

34
4 / 4 / 6
Регистрация: 02.12.2019
Сообщений: 277
07.04.2022, 14:02  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от AndreyVorobey Посмотреть сообщение
crushed00, а для чего Вам выводить это значение? оно же нечитаемое. что в нем хранится?
Ну для начало я хочу его записать в переменную что бы увидеть тот ли массив записывается какой мне нужен, а потом эту переменную буду передовать в
C#
1
MemoryStream docStream = new MemoryStream(массив);
Что бы потом преобразовывалось всё в формат XPS

Добавлено через 6 минут
что в нем хранится?
книги в формате XPS. Точнее книга , в каждой строке 1 книга будет. А там нужную строку выводить я смогу
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
07.04.2022, 14:16
crushed00,
Цитата Сообщение от crushed00 Посмотреть сообщение
Ну для начало я хочу его записать в переменную что бы увидеть тот ли массив записывается какой мне нужен
в этом нет смысла. воспроизводите в EF логику sql-запроса для выбора нужной строки и выводите готовый результат. что Вы там собрались сверять, если сами говорите, что строка может иметь длину тысячи байт? не занимайтесь глупостью.
а конвертация байт в какой-то другой тип можно легко найти в интернете
0
4 / 4 / 6
Регистрация: 02.12.2019
Сообщений: 277
07.04.2022, 14:22  [ТС]
Цитата Сообщение от AndreyVorobey Посмотреть сообщение
crushed00,
в этом нет смысла. воспроизводите в EF логику sql-запроса для выбора нужной строки и выводите готовый результат. что Вы там собрались сверять, если сами говорите, что строка может иметь длину тысячи байт? не занимайтесь глупостью.
а конвертация байт в какой-то другой тип можно легко найти в интернете
Ну в том то и проблема, что что бы я не кинул в MemoryStream docStream = new MemoryStream(массив);


Выдаёт исключения, что не правильная конвертация. Вот я и хочу вывести сам массив, что бы убедится что там реально массив а не какое то Г, а потом уже эту переменную передавать в MemoryStream
0
 Аватар для pincet
1655 / 1154 / 173
Регистрация: 23.07.2010
Сообщений: 6,914
07.04.2022, 18:29
гайз, не пора ои вам покинуть топик?
0
Эксперт .NET
 Аватар для Usaga
14784 / 9558 / 1366
Регистрация: 21.01.2016
Сообщений: 36,046
08.04.2022, 06:57
Я почитал тему и не понял проблемы ТСа))

crushed00, у вас поле бинарного типа в базе. Вы на клиенте хотите увидеть что? Строку с HEX-кодом? Зачем? И причём тут база вообще?
0
4 / 4 / 6
Регистрация: 02.12.2019
Сообщений: 277
08.04.2022, 08:35  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
Я почитал тему и не понял проблемы ТСа))

crushed00, у вас поле бинарного типа в базе. Вы на клиенте хотите увидеть что? Строку с HEX-кодом? Зачем? И причём тут база вообще?
Хотел вывести значение бинарное, ну теперь понял что вывести это не получится. Пробую с базы вывести документ (он же в базе имеет тип varbinary(max)) в WPF в формате XPS
0
Эксперт .NET
 Аватар для Usaga
14784 / 9558 / 1366
Регистрация: 21.01.2016
Сообщений: 36,046
08.04.2022, 08:38
crushed00, вы просто запрашиваете из базы то, что там есть в том виде, в котором оно там хранится - массив байт. А потом делаете с этим массивом всё что угодно. Хоть выводите, хоть сохраняете, хоть на ушах стоите. К базе и EF'у дальнейшая судьба этого массива не относится.

И да, с массивом байт вы можете что угодно сделать. Если у вас там чего-то не получается, то это вы просто не достаточно знаете C#.
0
4 / 4 / 6
Регистрация: 02.12.2019
Сообщений: 277
08.04.2022, 08:41  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
Если у вас там чего-то не получается, то это вы просто не достаточно знаете C#
Ну это логично, я бы не задавал вопрос на форуме если бы знал как это сделать .
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,758
Записей в блоге: 4
08.04.2022, 08:58
Цитата Сообщение от crushed00 Посмотреть сообщение
Ну это логично, я бы не задавал вопрос на форуме если бы знал как это сделать .
Я же вам дал ссылку на примеры по работе с BLOB в соседней теме, вы смотрели? Там используется ADO, но суть одна.
0
Эксперт .NET
 Аватар для Usaga
14784 / 9558 / 1366
Регистрация: 21.01.2016
Сообщений: 36,046
08.04.2022, 09:45
Andrey-MSK, ему не с блобами надо работать. Он хочет из массива байт получить строку с HEX. Если я правильно понял.

crushed00,

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
using System;
using System.Text;
 
namespace App
{
    class Program
    {
        public static void Main(string[] args)
        {
            byte[] bytes = { 1, 2, 3, 4, 5 };
 
            foreach(var @byte in bytes)
            {
                Console.Write(@byte.ToString("X2"));
            }
 
            Console.WriteLine();
 
            var builder = new StringBuilder();
            foreach (var @byte in bytes)
            {
                builder.Append(@byte.ToString("X2"));
            }
            Console.WriteLine(builder.ToString());
        }
    }
}
0
4 / 4 / 6
Регистрация: 02.12.2019
Сообщений: 277
08.04.2022, 10:04  [ТС]
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
Я же вам дал ссылку на примеры по работе с BLOB в соседней теме, вы смотрели? Там используется ADO, но суть одна.
Честно, то что вы скинули мне не подошло.

Но, я смог вывести по своему. Вот весь код

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 <Grid Height="auto" Width="auto" x:Name="gridDate">
        <TextBlock VerticalAlignment="Bottom" x:Name="textBlock"
                            TextWrapping="Wrap" HorizontalAlignment="Right"
                            Margin="0 0 30 5" FontSize="14"
                            Text="{Binding ElectronicVersion}"/>
        <StackPanel>
            <UniformGrid Rows="1">
                <!--<Button Content="Xps File to Bytes Array" HorizontalAlignment="Left"   x:Name="btnOpenFile" Click="btnOpenFile_Click"/>-->
                <Button Content="Show Array" Margin="10"  x:Name="btnShowArray" Click="btnShowArray_Click"/>
 
            </UniformGrid>
            <DocumentViewer Height="500"  x:Name="doc"/>
        </StackPanel>
    </Grid>
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 public partial class test : Page
    {
       
        public test()
        {
            InitializeComponent();
          
            gridDate.DataContext = App.DataBase.Books.ToArray();
                     
        }
     
        private void btnShowArray_Click(object sender, RoutedEventArgs e)
        {
            var arrya = App.DataBase.Books.FirstOrDefault(i => i.ElectronicVersion != null).ElectronicVersion;
 
            MemoryStream docStream = new MemoryStream(arrya);
            Package package = Package.Open(docStream);
 
            
            string inMemoryPackageName = string.Format("memorystream://{0}.xps", Guid.NewGuid());
            Uri packageUri = new Uri(inMemoryPackageName);
 
            
            PackageStore.AddPackage(packageUri, package);
 
            XpsDocument xpsDoc = new XpsDocument(package, CompressionOption.Maximum, inMemoryPackageName);
            FixedDocumentSequence fixedDocumentSequence = xpsDoc.GetFixedDocumentSequence(); 
            
            doc.Document = fixedDocumentSequence;         
        }
    }
0
 Аватар для Andrey-MSK
3397 / 2283 / 388
Регистрация: 14.08.2018
Сообщений: 7,758
Записей в блоге: 4
08.04.2022, 10:06
Usaga, Не, ему нужно прочитать binary (который был загружен в БД из файла XPS) и конвертнуть его в XPS для DocumentViewer. Вот я ему и советую почитать как работать с BLOB на примере, там рассказывается работа с изображением, но не важно. В двух темах уже ответы давали... А ТС всё пытается BLOB изобразить в string и пытается его передать в поток...

Добавлено через 1 минуту
Цитата Сообщение от crushed00 Посмотреть сообщение
Но, я смог вывести по своему. Вот весь код
Дак вам про это еще в первой вашей теме ответили, а вы все пытались со string мутить...
0
4 / 4 / 6
Регистрация: 02.12.2019
Сообщений: 277
08.04.2022, 10:11  [ТС]
Цитата Сообщение от Andrey-MSK Посмотреть сообщение
Usaga, Не, ему нужно прочитать binary (который был загружен в БД из файла XPS) и конвертнуть его в XPS для DocumentViewer. Вот я ему и советую почитать как работать с BLOB на примере, там рассказывается работа с изображением, но не важно. В двух темах уже ответы давали... А ТС всё пытается BLOB изобразить в string и пытается его передать в поток...

Добавлено через 1 минуту

Дак вам про это еще в первой вашей теме ответили, а вы все пытались со string мутить...
Ну..... А мне захотелось костыли сначала поделать, вот отказался от той затеи

Добавлено через 2 минуты
Кто нибудь пометьте мой код выше, как решение. Что бы такие бестолочи как я, смогли исправить свой код.
0
Эксперт .NET
 Аватар для Usaga
14784 / 9558 / 1366
Регистрация: 21.01.2016
Сообщений: 36,046
08.04.2022, 10:21
crushed00, не надо так делать:

C#
1
var arrya = App.DataBase.Books.FirstOrDefault(i => i.ElectronicVersion != null).ElectronicVersion;
Вытаскивайте из базы только то, что вам нужно:

C#
1
2
3
4
var arrya = App.DataBase.Books
    .Where(i => i.ElectronicVersion != null)
    .Select(i => i.ElectronicVersion)
    .FirstOrDefault();
1
4 / 4 / 6
Регистрация: 02.12.2019
Сообщений: 277
08.04.2022, 10:32  [ТС]
Цитата Сообщение от Usaga Посмотреть сообщение
crushed00, не надо так делать:

C#
1
var arrya = App.DataBase.Books.FirstOrDefault(i => i.ElectronicVersion != null).ElectronicVersion;
Вытаскивайте из базы только то, что вам нужно:

C#
1
2
3
4
var arrya = App.DataBase.Books
    .Where(i => i.ElectronicVersion != null)
    .Select(i => i.ElectronicVersion)
    .FirstOrDefault();
Понял, спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.04.2022, 10:32

Результат запроса в переменную
Здравствуйте, Есть запрос на выборку. Он вернет одну строчку. Как его результат записать в переменную? Выскакивает ошибка Type...

Результат SQL запроса в переменную
В принципе заголовок Как записать результат выборки SQL запроса в переменную, заведомо известно что результат может быть только один ...

Результат запроса select в переменную
Доброго времени суток. /* использую pl/sql для написания процедур. */ Есть таблица, в которой есть записи. Есть...

как результат запроса записать в переменную?
Всем доброго времени суток. Возник такой вопрос. Есть база (MYSQL + mysql connector) я копался по форуму , не смог найти как...

SQLite как записать результат запроса в переменную (Android, Java)
Здравствуйте! Помогите, пожалуйста решить проблему. Необходимо получить кол-во записей в таблице. Для этого использую такой вот запрос:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
35
Ответ Создать тему
Новые блоги и статьи
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru