Search code examples
c#sql-server-2008bytevarbinarymax

Retrieve varbinary(MAX) from SQL Server to byte[] in C#


I'm trying to get a varbinary(MAX) from SQL Server to a byte[] variable in C#.

How can I do this?

Thanks


Solution

  • private static byte[] getDocument(int documentId)
    {
        using (SqlConnection cn = new SqlConnection("..."))
        using (SqlCommand cm = cn.CreateCommand())
        {
            cm.CommandText = @"
                SELECT DocumentData
                FROM   Document
                WHERE  DocumentId = @Id";
            cm.Parameters.AddWithValue("@Id", documentId);
            cn.Open();
            return cm.ExecuteScalar() as byte[];
        }
    }