0

我有一个 ac# 程序集,它接受一个 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 的截断版本

4

1 回答 1

0

回答我自己的问题:

我不得不将decryptbykey的结果转换为varchar ... duh!:)

于 2009-03-02T21:46:46.790 回答