If you call .ToString() , you will get a string; instead, just click:
byteArray = (byte[])dataTable.Rows[0]["BinaryData"];
However, <<22> is not required here. Personally, I would just use:
var byteArray = conn.Query<byte[]>( "SELECT BinaryData FROM StackOverflow WHERE Id=@id ", new {id}).FirstOrDefault();
using dapper, or just ExecuteScalar with ADO.NET:
byte[] byteArray; using(var cmd = conn.CreateCommand()) { cmd.CommandText = "SELECT BinaryData FROM StackOverflow WHERE Id=@id "; cmd.Parameters.AddWithValue("id",id); byteArray = (byte[])cmd.ExecuteScalar(); }
source share