Мы недавно перешли с сервера Oracle на MS SQL, и у меня возникают проблемы при чтении VarBinary (max) с SQL Server
Код для Oracle был
private byte[] CallSelectBlob(string aSqlCommand)
{
byte[] result = new byte[0];
OracleCommand comm = new OracleCommand(aSqlCommand, oc);
OracleDataReader reader = comm.ExecuteReader(System.Data.CommandBehavior.Default);
while (reader.Read())
{
for (int i = 0; i < reader.FieldCount; i++)
{
string fieldName = reader.GetName(i);
OracleLob myLob = reader.GetOracleLob(i);
if (!myLob.IsNull)
{
byte[] b = new byte[myLob.Length];
myLob.Read(b, 0, Convert.ToInt32(myLob.Length));
result = b;
}
}
}
reader.Close();
return result;
}
Иэто работало хорошо, но мне не удалось найти объект, который может заменить OracleLob чем-то, что может работать с VarBinary (max) (который будет служить в качестве файла PDF)
Функция должна вернуть его какбайт[].
Кто-нибудь знает способ, которым можно достичь этого?