Re: Downloading Zip from SQL Image field
- From: "Ignacio Machin \( .NET/ C# MVP \)" <ignacio.machin AT dot.state.fl.us>
- Date: Tue, 27 Dec 2005 10:29:00 -0500
Hi,
No idea if this is related or not, but in my office computer I have a
similar error, each time I select to download something from the internet
and select "open" instead of "save" I get the same error, but if I save it
first and open later I have no problem at all. I had no time to investigate
why is this happening, maybe the antivirus or a security policy.
Btw, the code seems fine , you did not post it how you are getting it from
the DB but it should be fine too.
--
Ignacio Machin,
ignacio.machin AT dot.state.fl.us
Florida Department Of Transportation
"joef@xxxxxxxxxx" <joef@xxxxxxxxxx@discussions.microsoft.com> wrote in
message news:219717D8-0E58-4F1D-BD92-322A4D3AB6EF@xxxxxxxxxxxxxxxx
> I'm converting a Delphi app to C#. The application uploads and downloads
> files to an image field on SQL through a webservice. With Delphi, this was
> done straight to SQL instead of a webservice. The C# code works fine in
> both
> directions except in the case of zip files. I get a message, from WinZip,
> telling me that the archive is not valid. The zip is valid, in the sql
> server, becuase it can be opened when using my old Delphi version of this
> program. I can also upload the zips with the C# version and open them with
> the Delphi version so I'm pretty sure it how the file is being re-created
> using C#.
>
> Below is the code that I use to download and open the file Any help would
> be
> appreciated.
>
> TIA
>
> //Get the document from the table
> DataRow rowDataImage = null;
> DataRowView rowData =
> DataRowView)BindingContext[dsLibrary.Tables["AvailDocs"]].Current;
> DataSet ds = DB.getDoc(System.Convert.ToInt32(rowData[0].ToString()));
> string strDocExt =
> DB.getDocFileExt(System.Convert.ToInt32(rowData[0].ToString()));
> rowDataImage=ds.Tables[0].Rows[0];
>
> //Read the image from the table field into a byte array
> byte[] MyData= new byte[0];
> MyData = (byte[])rowDataImage[0];
> int ArraySize = new int();
> ArraySize = MyData.GetUpperBound(0);
>
> //Create a destination for the file
> FileStream fs = new FileStream("c:\\elibtemp." + strDocExt,
> FileMode.Create,FileAccess.Write,FileShare.Write,ArraySize,true);
>
> // Create the writer for data.
> fs.Write(MyData, 0,ArraySize);
> fs.Close();
.
- Prev by Date: Re: Can you write code directly in CIL ???
- Next by Date: Re: Remote File I/O
- Previous by thread: Technical question?
- Next by thread: Re: About a custom Crystal Report
- Index(es):
Relevant Pages
|