SQL Server Assembléias e SQLBinary DataType
-
03-07-2019 - |
Pergunta
Eu tenho um c # assembly que leva em uma variável SQLBinary para descriptografar ...
[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;
I incluem o (SqlBinary) argValue como uma coluna na instrução SELECT para simples depuração. Ela não aparecem como se este valor SqlBinary está devidamente sendo colocado na consulta.
argValue está sendo usado assim:
QueryString += "SELECT decryptbykey(@argValue);";
O que está sendo devolvido parece uma versão truncada de (SqlBinary) argValue
Solução
Resposta à minha pergunta:
Eu tive que converter o resultado de DecryptByKey a um varchar ... duh! :)
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow