protected void LoadBlobData()
{
int byteCount;
long currentIndex;
int fileNameColumn = 0;
int dataColumn = 1;
int bufferSize = 1000;
byte[] buffer = new byte[bufferSize];
ConnectionStringSettings connSetting = ConfigurationManager.
ConnectionStrings["MyConnectionString"];
using (SqlConnection cn = new SqlConnection())
{
cn.ConnectionString = connSetting.ConnectionString;
cn.Open();
using (SqlCommand command = new SqlCommand())
{
command.CommandText = "Select file_name,data from
files";
SqlDataReader reader =
command.ExecuteReader
(CommandBehavior.SequentialAccess);
while (reader.Read())
{
string fileName = @"\\MyDirectory\" +
reader.GetString(fileNameColumn);
using (FileStream fs = new FileStream(fileName,
FileMode.OpenOrCreate, FileAccess.Write))
{
currentIndex = 0;
byteCount = (int)reader.GetBytes(dataColumn,
currentIndex, buffer, 0, bufferSize);
while (byteCount != 0)
{
fs.Write(buffer, 0, byteCount);
currentIndex += byteCount;
byteCount =
(int)reader.GetBytes(dataColumn,
currentIndex, buffer, 0, bufferSize);
}
}
}
}
}
}