Domanda

Ho un assembly c # che accetta una variabile SQLBinary per decrittografare ...

[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;

Includo argValue (SqlBinary) come colonna nell'istruzione select per il debug semplice. Non sembra che questo valore SqlBinary venga correttamente inserito nella query.

argValue viene utilizzato in questo modo:

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

Ciò che viene restituito sembra una versione troncata di (SqlBinary) argValue

È stato utile?

Soluzione

Rispondi alla mia domanda:

Ho dovuto lanciare il risultato di decryptbykey su un varchar ... duh! :)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top