18

varbinary(MAX)パラメータを持つテーブルがあります。クエリを実行した後、出力として複数の列があるため、結果を SqlDataReader に格納します。

SqlCommand cmd = new SqlCommand("select leave_details from LeaveTable");
SqlDataReader obj;
con.Open();
obj = cmd.ExecuteReader();

ここで、各行の結果を byte[] に変換したいと思います。

これは機能していません::

byte[] b=null;
obj.GetBytes(0,0,b,0,1024);
4

2 に答える 2

38

方法を試すGetValue()

byte[] b=null;
b=(byte [])obj.GetValue(0);
//OR
b=(byte [])obj[0];
于 2012-12-19T08:30:20.790 に答える
0
string bytesfromsql = "01010101010110010111010001"; //for example
byte[] bytes = new byte[bytesfromsql.Length];
for (int i = 0; i < bytes.Count(); i++)
{
   bytes[i] = byte.Parse(bytesfromsql[i].ToString());
}
于 2012-12-19T08:33:27.607 に答える