Вопрос

У меня есть сборка c #, которая принимает переменную SqlBinary для расшифровки...

[SqlProcedure(Name="Decrypt")]
public static SqlInt32 Decrypt(SqlBinary toDecrypt)
{
    return runQuery(toDecrypt);
}

// decrypt or encrypt is determined based on the datatype of argValue
private static SqlInt32 runQuery(object argValue)
{
    // create connection and command

       command.Parameters.Add("@argValue", SqlDbType.VarBinary, 1024).Value = (SqlBinary)argValue;

Я включаю (SqlBinary)argValue в качестве столбца в инструкции select для простой отладки.Не похоже, что это значение SqlBinary правильно помещается в запрос.

argValue используется следующим образом:

QueryString += "SELECT decryptbykey(@argValue);";

Возвращаемое значение выглядит как усеченная версия (SqlBinary)argValue

Это было полезно?

Решение

Ответ на мой собственный вопрос:

Мне пришлось преобразовать результат decryptbykey в varchar ...да!:)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top