2013-07-31 56 views
0

其實我已經保存了一些文件。 pdf,。 txt,。 doc,。 xls通過將它們轉換爲<Binary data>在我的SQL SERVER DBFileUploadControl中。 現在,我想將<Binary data>轉換回正常並給用戶下載(或)查看數據的選項。如何將BinaryData轉換爲C#中的文件?

我已經嘗試了一些這樣的事情。 txt文件

var filedata = (from xx in VDC.SURVEY_QUESTION_REPLIES 
            where xx.ID == FileID 
            select xx).FirstOrDefault(); 

string fileextension = filedata.FILE_EXTENSION.ToString(); 
string fileName = filedata.ANSWER_TEXT.ToString() + fileextension; 
Byte[] bytes = (Byte[])filedata.FILE_DATA; 
Response.Buffer = true; 
Response.Charset = ""; 
Response.Cache.SetCacheability(HttpCacheability.NoCache); 
Response.AddHeader("content-disposition", "attachment;filename=" + HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8)); 
Response.BinaryWrite(bytes); 
Response.Flush(); 
Response.End(); 

我正在一個錯誤,如:

無法因爲代碼被優化或 天然幀是在調用堆棧的頂部以評價表達。

+0

如果可能的話,你能建議任何其他過程嗎? – RealSteel

回答

0

您可以嘗試此示例以保存PDF文件。

byte[] binaryData = (byte[])filedata.FILE_DATA;

`File.WriteAllBytes("file.pdf", binaryData);` 
0

是數據類型System.Data.Linq.Binary,那麼你可以這樣做:

byte[] bytes = filedata.FILE_DATA.ToArray(); 

問候。

相關問題