Как читать varbinary SQL как строку в C #?

У меня есть веб-приложение, которое читает varbinary из SQL как массив байтов в коде. В основном он выполняет ExecuteScalar столбца и возвращает его как массив байтов.

Сейчас делаю мини-версию приложения под Windows. Для этого я пытаюсь пропустить соединение с БД. Я напрямую ввожу значение varbinary из SQL в RichTextBox и пытаюсь прочитать его как массив байтов. Однако я не получаю тот же массив байтов. Что я делаю не так и как мне действовать?


person Divakar    schedule 09.03.2015    source источник
comment
В какой кодировке был создан двоичный файл?   -  person Izzy    schedule 09.03.2015
comment
Как именно вы вводите двоичные данные в richtextbox?   -  person Rhys Jones    schedule 09.03.2015
comment
@Izzy Я получаю подробности как массив и сериализую их с помощью класса BinaryFormatter. Не уверен, что ответил на ваш вопрос. Дайте мне знать, если вам понадобится дополнительная информация.   -  person Divakar    schedule 09.03.2015
comment
@RhysJones Я просто копирую значение varbinary из БД и вставляю его в строку текстового поля.   -  person Divakar    schedule 09.03.2015
comment
возможный дубликат SQL Server, преобразующий varbinary в строку   -  person Rhys Jones    schedule 09.03.2015
comment
@DivakarRaj Можете ли вы опубликовать соответствующий код?   -  person Izzy    schedule 09.03.2015


Ответы (1)


Я получил это с помощью этого фрагмента кода

    string hex = richTextBox1.Text
    int NumberChars = hex.Length;
    byte[] bytes = new byte[NumberChars / 2];
    for (int i = 0; i < NumberChars; i += 2)
    bytes[i / 2] = Convert.ToByte(hex.Substring(i, 2).ToString(), 16);
    return bytes;
person Divakar    schedule 10.03.2015