ล่าสุดมีงานที่เกี่ยวข้องกับอีเมล ซึ่งจำเป็นต้องอัปโหลดไฟล์ไปยังฐานข้อมูล จากนั้นจึงอ่านไฟล์ออกจากฐานข้อมูลและดาวน์โหลดไฟล์เหล่านั้น
ฉันพบข้อมูลบางอย่างและนำไปใช้กับโครงการ
โครงสร้างของฐานข้อมูลมีดังนี้:
ใช้[EOffice]
ไป
/**//****** วัตถุ: ตาราง [dbo].[Group_Files] วันที่สคริปต์: 20/07/2549 23:57:34 ******/
ตั้งค่า ANSI_NULLS เป็นเปิด
ไป
เปิด QUOTED_IDENTIFIER
ไป
ตั้งค่า ANSI_PADDING บน
ไป
สร้างตาราง [dbo].[Group_Files](
[ID] [int] ตัวตน (1,1) ไม่เป็นโมฆะ
[ชื่อไฟล์] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL CONSTRAINT [DF_Group_Files_FileName] เริ่มต้น ('')
[FileBody] [ภาพ] โมฆะ
[FileType] [varchar](50) COLLATE Chinese_PRC_CI_AS NULL CONSTRAINT [DF_Group_Files_FileType] เริ่มต้น (''),
ข้อ จำกัด [PK_Group_Files] คีย์หลักที่คลัสเตอร์
-
[ID]ASC
) ด้วย (IGNORE_DUP_KEY = ปิด) เปิด [หลัก]
) บน [หลัก] TEXTIMAGE_ON [หลัก]
ไป
ตั้งค่า ANSI_PADDING ปิด
จากนั้นฉันก็เขียน Stored Procedure ด้วยโค้ดต่อไปนี้:
ใช้[EOffice]
ไป
/**//****** วัตถุ: StoredProcedure [dbo].[SendTo_Group_Email] วันที่สคริปต์: 20/07/2006 23:59:21 ******/
ตั้งค่า ANSI_NULLS เป็นเปิด
ไป
เปิด QUOTED_IDENTIFIER
ไป
สร้างขั้นตอน [dbo] [SendTo_Group_Email]
-
@Title varchar (200)
@Content varchar (สูงสุด)
@Area varchar (สูงสุด)
@Sender วาร์ชาร์ (50)
@ฝ่ายวาร์ชาร์(50)
@SendToUser วาร์ชาร์ (50)
@ชื่อไฟล์ varchar(200)
ภาพ @FileBody
@FileType วาร์ชาร์(4)
-
AS
INSERT Group_Email (ชื่อเรื่อง,[เนื้อหา],พื้นที่,SendToUser,ฝ่าย,ผู้ส่ง,ชื่อไฟล์,FileBody,FileType) ค่า (@Title,@Content,@Area,@SendToUser,@Dept,@Sender,@FileName,@FileBody, @ประเภทไฟล์)
รหัสโปรแกรมเป็นดังนี้:
SendEmail.aspx
1<%@ ภาษาเพจ = "C#" AutoEventWireup = "true" CodeFile = "SendEmail.aspx.cs" สืบทอด = "GroupWork_SendEmail" %>
2
3<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
4
5<html xmlns=" http://www.w3.org/1999/xhtml " >
6
7<หัว runat="เซิร์ฟเวอร์">
8 <title>ส่งอีเมล</title>
9<meta http-equiv="Content-Type" content="text/html; charset=utf-8"><style type="text/css">
10body,td,th {
11 ขนาดตัวอักษร: 9pt;
12}
13 ตัว {
14 ภาพพื้นหลัง: url();
15 สีพื้นหลัง: #F2F7FB;
16 ขอบซ้าย: 10px;
17 ขอบบน: 5px;
18 ขอบขวา: 10px;
19 ขอบล่าง: 5px;
20}
21-->
22</สไตล์></หัว>
23<script language="vbscript">
24ฟังก์ชั่น Select_Local_User(url)
25 สลัว เค
26 k=showModalDialog(url,"","dialogWidth:485px;status:no;dialogHeight:280px")
27 ถ้า ubound(split(k," $#@&!"))>=0 แล้ว
28 document.form1.HiddenField1.value = แยก(k," $#@&!")(0 )
29 document.form1.txtLocalUser.value = แยก(k," $#@&!")(1 )
30 จบถ้า
ฟังก์ชัน 31end
32
33ฟังก์ชั่น Select_Remote_User(url)
34 สลัว เค
35 k=showModalDialog(url,"","dialogWidth:485px;status:no;dialogHeight:310px")
36 ถ้า ubound(split(k," $#@&!"))>=0 แล้ว
37 document.form1.HiddenField2.value = split(k," $#@&!")(0 )
38 document.form1.txtRemoteUser.value=split(k," $#@&!")(1 )
39 จบถ้า
ฟังก์ชัน 40end
41
42</script>
43<ร่างกาย>
44 <form id="form1" method="post" enctype="multipart/form-data" runat="server">
45 <div style="text-align: center">
46 <table border="0" cellpadding="0" cellspacing="0" width="100%">
47 <tr>
48 <td width="1%"><img src="../Images/spacer.gif" width="11" height="1" border="0" alt="" /></td>
49 <td colspan="2"><img src="../Images/spacer.gif" width="209" height="1" border="0" alt="" /></td>
50 <td width="1%"><img src="../Images/spacer.gif" width="12" height="1" border="0" alt="" /></td>
51 <td width="2%"><img src="../Images/spacer.gif" width="1" height="1" border="0" alt="" /></td>
52 </tr>
53 <tr>
54 <td style="height: 35px"><img src="../Images/ye_r1_c1.gif" alt="" name="ye_r1_c1" width="11" height="30" border="0" id ="คุณ_r1_c1" /></td>
55 <td colspan="2" align="left" background="../images/ye_r1_c2.gif" style="height: 35px"><table width="119" border="0" cellspacing="0" เซลล์แพ็ดดิ้ง="0">
56 <tr>
57 <td width="40" height="20"> </td>
58 <td width="79" valign="top"><strong>ลงทะเบียนเพื่อรับใบเสร็จ</strong></td>
59 </tr>
60 </ตาราง></td>
61 <td style="height: 35px"><img src="../Images/ye_r1_c3.gif" alt="" name="ye_r1_c3" width="12" height="30" border="0" id ="คุณ_r1_c3" /></td>
62 <td style="height: 35px"></td>
63 </tr>
64 <tr>
65 <td background="../images/ye_r2_c1.gif"> </td>
66 <td width="13%"> </td>
67 <td width="83%" align="left"><img src="../Images/dj.gif" width="300" height="30" /></td>
68 <td background="../images/ye_r2_c3.gif"> </td>
69 <td> </td>
70 </tr>
71 <tr>
72 <td background="../images/ye_r2_c1.gif"> </td>
73 <td colspan="2"><div align="center">
74 <table border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC" style="width: 566px">
75 <tr bgcolor="#b9d5f4">
76 <td style="width: 186px; height: 20px">
77 <div align="center" class="style2"> ชื่อไฟล์</div></td>
78 <td colspan="2" align="left" style="height: 20px; width: 433px;">
79 <asp:TextBox ID="txtTitle" runat="server" class="Input_TextBox" width="277px"></asp:TextBox>
80 <asp:RequiredFieldValidator ID = "RequiredFieldValidator2" runat = "เซิร์ฟเวอร์" ControlToValidate = "txtTitle"
81 Display="Dynamic" ErrorMessage="ชื่อไฟล์ไม่สามารถเว้นว่างได้"></asp:RequiredFieldValidator></td>
82 </tr>
83 <tr bgcolor="#F1F5FC">
84 <td style="width: 186px; height: 20px">
ผู้ใช้ท้องถิ่น 85 ราย</td>
86 <td align="ซ้าย" colspan="2" style="width: 433px; height: 20px">
87 <asp:TextBox ID="txtLocalUser" runat="server" width="279px"></asp:TextBox><input
88 id = "SelectLocal" class = "Input_Button" name = "SelectLocal" onClick = "vbscript:Select_Local_User('..SelectMulti.aspx')" ประเภท = "ปุ่ม"
89 value="select" /><asp:HiddenField ID="HiddenField1" runat="เซิร์ฟเวอร์" />
90 </td>
91 </tr>
92 <tr bgcolor="#b9d5f4">
93 <td style="width: 186px; height: 20px">
94 ผู้ใช้ระยะไกล</td>
95 <td align="ซ้าย" colspan="2" style="width: 433px; height: 20px">
96 <asp:TextBox ID="txtRemoteUser" runat="เซิร์ฟเวอร์" ความกว้าง="279px"></asp:TextBox>
97 <input id = "SelectRemote" class = "Input_Button" name = "SelectRemote" onClick = "vbscript:Select_Remote_User('..SelectRemoteUser.aspx')"
98 ประเภท = "ปุ่ม" ค่า = "เลือก" />
99 <asp:HiddenField ID="HiddenField2" runat="เซิร์ฟเวอร์" />
100 </td>
101 </tr>
102 <tr bgcolor="#F1F5FC">
103 <td rowspan="2" align="center" style="width: 186px; height: 11px;"> อัพโหลดไฟล์</td>
104 <td colspan="2" rowspan="2" align="left" valign="top" bgcolor="#F1F5FC" style="width: 433px; height: 11px;">
105 <input id = "File1" runat = "เซิร์ฟเวอร์" style = "width: 381px" type = "file" /><br />
106 <input id="File2" runat="server" style="width: 379px" type="file" />
107 <input id = "File3" runat = "เซิร์ฟเวอร์" style = "width: 379px" type = "file" />
108 <input id = "File4" runat = "เซิร์ฟเวอร์" style = "width: 379px" type = "file" />
109 <input id="File5" runat="server" style="width: 377px" type="file" /></td>
110 </tr>
111 <tr>
112 </tr>
113 <tr bgcolor="#B9D5F4">
114 <td style="width: 186px; height: 22px;">
115 <div align="center" class="style2"> เนื้อหาอีเมล</div></td>
116 <td colspan="2" align="left" style="width: 433px; height: 22px;">
117 <asp:TextBox ID="txtContent" runat="server" Height="57px" TextMode="MultiLine" width="296px" class="Input_TextBox"></asp:TextBox>
118 <asp:RequiredFieldValidator ID = "RequiredFieldValidator7" runat = "เซิร์ฟเวอร์" ControlToValidate = "txtContent"
119 Display="Dynamic" ErrorMessage="เนื้อหาอีเมลไม่สามารถเว้นว่างได้"></asp:RequiredFieldValidator></td>
120 </tr>
121 <tr bgcolor="#F1F5FC">
122 <td style="width: 186px; height: 6px">
123 </td>
124 <td colspan="2" align="left" style="height: 6px; width: 433px;">
125 <asp:CheckBox ID="chkSms" runat="server" Text="การแจ้งเตือนทาง SMS" />
126 <asp:Button ID="btnSubmit" runat="server" OnClick="btnSubmit_Click" Text="ส่ง" class="Input_Button" />
127 <input type="reset" name="ส่ง" value="รีเซ็ต" class="Input_Button" /></td>
128 </tr>
129 </ตาราง>
130 </div></td>
131 <td background="../images/ye_r2_c3.gif"> </td>
132 <td> </td>
133 </tr>
134 <tr>
135 <td><img src="../Images/ye_r3_c1.gif" alt="" name="ye_r3_c1" width="11" height="22" border="0" id="ye_r3_c1" />< /td>
136 <td colspan="2" background="../images/ye_r3_c2.gif"> </td>
137 <td><img src="../Images/ye_r3_c3.gif" alt="" name="ye_r3_c3" width="12" height="22" border="0" id="ye_r3_c3" />< /td>
138 <td> </td>
139 </tr>
140 </ตาราง>
141 </div>
142 </แบบฟอร์ม>
143</ร่างกาย>
144</html>
145
SendEmail.aspx.cs
1ใช้ระบบ;
2ใช้ระบบข้อมูล;
3การใช้ระบบการกำหนดค่า;
4การใช้ระบบคอลเลกชัน;
5ใช้ระบบ.เว็บ;
6ใช้ System.Web.Security;
7ใช้ System.Web.UI;
8ใช้ System.Web.UI.WebControls;
9ใช้ System.Web.UI.WebControls.WebParts;
10ใช้ System.Web.UI.HtmlControls;
11
12ใช้ระบบ.ข้อมูล;
13ใช้ System.Data.SqlClient;
14ใช้ EOffice.Model;
15ใช้ EOffice.SqlServer;
16โดยใช้ระบบ IO;
17การใช้ระบบการกำหนดค่า;
18
19//ใช้ iWebSMS2000;
20[ทำให้เป็นอนุกรมได้]
21คลาสสาธารณะบางส่วน GroupWork_SendEmail: System.Web.UI.Page
ยี่สิบสอง{
23 เชื่อมต่อ SqlConnection สาธารณะ;
24 // SMS iSMS2000 สาธารณะ;
25 // สาธารณะ DBstep.SMSClient2000 ObjiSMSClient2000;
26 โมฆะที่ได้รับการป้องกัน Page_Load (ผู้ส่งวัตถุ EventArgs e)
27 {
28 conn = ใหม่ SqlConnection("SERVER=SERVER;UID=sa;PWD=8860;database=EOFFICE_SERVER;");
29
30}
31 โมฆะที่ได้รับการป้องกัน btnSubmit_Click (ผู้ส่งวัตถุ EventArgs e)
32 {
33 สตริง strTitle = txtTitle.Text;
34 สตริง strContent = txtContent.Text;
35 ข้อมูล UserInfo = (ข้อมูลผู้ใช้) เซสชัน ["EOfficeUserInfo"];
36 สตริง strUserName = info.UserName;
37 สตริง strTmpDept = info.DeptId.ToString();
38
39 สตริง strUnitName = ConfigurationSettings.AppSettings["UnitName"];
40 String strServerFileIndex = ""; //ดัชนีไฟล์แนบฝั่งเซิร์ฟเวอร์
41 String strClientFileIndex = ""; //ดัชนีไฟล์แนบไคลเอนต์
42
43 สตริง strRemote = HiddenField2.Value;
44 สตริง[] strRemoteUser = strRemote.Split(',');
45 สตริง strTmpUserName;
46 สตริง strTmpServer;
47 บูลีน bDone = เท็จ;
48
49 /***/////////อัปโหลดรหัสไฟล์แนบหลายรายการ///////////////
50 // รับองค์ประกอบรูปแบบไฟล์
51 ไฟล์ HttpFileCollection = HttpContext.Current.Request.Files;
52 HttpPostedFile โพสต์ไฟล์;
53
54 foreach (สตริง strUser ใน strRemoteUser)
55 {
56 สตริง[] strSplit = strUser.Split('/');
57 strTmpUserName = strSplit[0];
58 strTmpServer = strSplit[1];
59 สตริง strConnectString = "";
60 สตริง strAreaName = "";
61 int nAreaID = 0;
62 สตริง strDept = "";
63 strClientFileIndex = "";
64 SqlConnection เชื่อมต่อไคลเอนต์;
65
66 String strSQL = "เลือก * จากพื้นที่โดยที่ AreaCode='" + strTmpServer + "'";
67 SqlCommand cmd = new SqlCommand(strSQL, conn);
68 cmd.Connection.เปิด();
69 โดยใช้ (SqlDataReader sdr = cmd.ExecuteReader())
70 {
71 ถ้า (sdr.Read())
72 {
73 strConnectString = sdr["ConnectString"].ToString();
74 strAreaName = sdr["AreaName"].ToString();
75 nAreaID = แปลง ToInt16(sdr["ID"]);
76 }
77 }
78 cmd.Connection.ปิด();
79
80 strSQL = "เลือก * จากรายชื่อสมาชิก โดยที่ชื่อผู้ใช้='" + strTmpUserName + "' และ AreaID=" + nAreaID;
81 cmd = SqlCommand ใหม่ (strSQL, conn);
82 cmd.Connection.เปิด();
83 โดยใช้ (SqlDataReader sdr = cmd.ExecuteReader())
84 {
85 ถ้า (sdr.Read())
86 {
87 strDept = sdr["ฝ่าย"].ToString();
88 }
89 }
90 cmd.Connection.ปิด();
91
92 connClient = SqlConnection ใหม่ (strConnectString);
93
94 สำหรับ (int intCount = 0; intCount < files.Count; intCount++)
95 {
96 โพสต์ไฟล์ = ไฟล์ [intCount];
97
98 ถ้า (postedFile.ContentLength > 0)
99 {
100 สตริง strOldFilePath = postFile.FileName;
101 สตริง strFileName = strOldFilePath.Substring(strOldFilePath.LastIndexOf("\") + 1);
102
103 //อัพโหลดไฟล์ขึ้นเซิร์ฟเวอร์
104 //File1.PostedFile.SaveAs("c:\Test\" + DateTime.Now.ToString("yyyyMMddhhmmss") + strExtension);
105
106 //ใช้สำหรับบันทึกขนาดไฟล์
107 int intDocLen;
108 //Stream ใช้เพื่ออ่านข้อมูลที่อัพโหลด
109 สตรีม objStream;
110 สตริง strDocExt;
111 //อัปโหลดเนื้อหาเฉพาะของไฟล์
112 intDocLen = โพสต์ไฟล์.ContentLength;
113 strDocExt = strOldFilePath.Substring(strOldFilePath.LastIndexOf(".") + 1);
114
115 ไบต์ [] Docbuffer = ไบต์ใหม่ [intDocLen];
116 objStream = โพสต์ไฟล์.InputStream;
117
118
119 //บันทึกไฟล์ลงแคช
120
121 //แคชจะถูกบันทึกลงในฐานข้อมูล
122 objStream.Read(Docbuffer, 0, intDocLen);
123
124 string fileType = โพสต์ไฟล์.ContentType;
125
126
127 //ดำเนินการขั้นตอนการจัดเก็บฝั่งเซิร์ฟเวอร์ Send_Group_Email
128 ถ้า (!bเสร็จสิ้น)
129 {
130 cmd = new SqlCommand("Send_Group_Email", conn);
131 cmd.CommandType = CommandType.StoredProcedure;
132 cmd.Parameters.Add("@FileName ", SqlDbType.VarChar, 200);
133 cmd.Parameters.Add("@FileBody", SqlDbType.Image);
134 cmd.Parameters.Add("@FileType", SqlDbType.VarChar, 4);
135 cmd.Parameters.Add("@File_Index", SqlDbType.Int);
136
137 cmd.Parameters[0].Value = strFileName;
138 cmd.Parameters[1].Value = Docbuffer;
139 //cmd.Parameters[2].Value = strDocExt;]
140 cmd.Parameters[2].Value = ประเภทไฟล์;
141
142 //cmd.Parameters.Add(SqlParameter ใหม่("@File_Index", SqlDbType.Int));
143 cmd.Parameters[3].Direction = ParameterDirection.ReturnValue;
144 cmd.การเชื่อมต่อเปิด();
145 cmd.ExecuteNonQuery();
146 strServerFileIndex += cmd.Parameters[3].Value.ToString() + ",";
147 cmd.Connection.ปิด();
148 }
149
150 //ดำเนินการขั้นตอนการจัดเก็บไคลเอ็นต์ Get_Upload_File
151 cmd = new SqlCommand("Get_Upload_File", connClient);
152 cmd.CommandType = CommandType.StoredProcedure;
153 cmd.Parameters.Add("@FileName ", SqlDbType.VarChar, 200);
154 cmd.Parameters.Add("@FileBody", SqlDbType.Image);
155 cmd.Parameters.Add("@FileType", SqlDbType.VarChar, 4);
156 cmd.Parameters.Add("@File_Index", SqlDbType.Int);
157
158 cmd.Parameters[0].Value = strFileName;
159 cmd.Parameters[1].Value = Docbuffer;
160 //cmd.พารามิเตอร์[2].Value = strDocExt;
161 cmd.Parameters[2].Value = ประเภทไฟล์;
162
163 //cmd.Parameters.Add(SqlParameter ใหม่("@File_Index", SqlDbType.Int));
164 cmd.Parameters[3].Direction = parameterDirection.ReturnValue;
165 cmd.การเชื่อมต่อเปิด();
166 cmd.ExecuteNonQuery();
167 strClientFileIndex += cmd.Parameters[3].Value.ToString() + ",";
168 cmd.Connection.ปิด();
169 }
170
171 ถ้า (intCount.Equals(files.Count - 1))
172 {
173 bเสร็จสิ้น = จริง;
174 }
175 }
176
177 strClientFileIndex = strClientFileIndex.Remove(strClientFileIndex.Length - 1);
178
179 strSQL = "แทรกลงใน Group_Email (ชื่อ,เนื้อหา,พื้นที่,SendToUser,Dept,ผู้ส่ง,Files_Index)";
180 strSQL += " ค่า (";
181 strSQL += "'" + strTitle + "',";
182 strSQL += "'" + strContent + "',";
183 strSQL += "'" + strUnitName + "',";
184 strSQL += "'" + strTmpUserName + "',";
185 strSQL += "'" + strDept + "',";
186 strSQL += "'" + strUserName + "',";
187 strSQL += "'" + strClientFileIndex + "')";
188 cmd = SqlCommand ใหม่ (strSQL, connClient);
189 cmd.การเชื่อมต่อเปิด();
190 cmd.ExecuteNonQuery();
191 cmd.Connection.ปิด();
192
193 สตริง strTmpServerFileIndex = strServerFileIndex.Remove(strServerFileIndex.Length - 1);
194
195 strSQL = "แทรกลงใน Group_Email_Sever (ชื่อ,เนื้อหา,พื้นที่,SendToUser,Dept,ผู้ส่ง,Files_Index)";
196 strSQL += " ค่า (";
197 strSQL += "'" + strTitle + "',";
198 strSQL += "'" + strContent + "',";
199 strSQL += "'" + strAreaName + "',";
200 strSQL += "'" + strTmpUserName + "',";
201 strSQL += "'" + strTmpDept + "',";
202 strSQL += "'" + strUserName + "',";
203 strSQL += "'" + strTmpServerFileIndex + "')";
204 cmd = SqlCommand ใหม่ (strSQL, conn);
205 cmd.การเชื่อมต่อเปิด();
206 cmd.ExecuteNonQuery();
207 cmd.Connection.ปิด();
208 }
209 /***///////// สิ้นสุดการอัปโหลดไฟล์แนบหลายรายการ///////////////
210 การตอบสนอง.เปลี่ยนเส้นทาง("../SuccessMsg.aspx");
211 }
212}
213
รหัสในการดาวน์โหลดไฟล์:
DownFile.aspx
DownFile.aspx.cs
1ใช้ระบบ;
2ใช้ระบบข้อมูล;
3การใช้ระบบการกำหนดค่า;
4การใช้ระบบคอลเลกชัน;
5ใช้ระบบ.เว็บ;
6ใช้ System.Web.Security;
7ใช้ System.Web.UI;
8ใช้ System.Web.UI.WebControls;
9ใช้ System.Web.UI.WebControls.WebParts;
10ใช้ System.Web.UI.HtmlControls;
11
12ใช้ระบบ.ข้อมูล;
13ใช้ System.Data.SqlClient;
14ใช้ EOffice.Model;
15ใช้ EOffice.SqlServer;
16โดยใช้ระบบ IO;
17
18[สามารถซีเรียลไลซ์ได้]
19คลาสสาธารณะบางส่วน GroupWork_DownFile: System.Web.UI.Page
20{
21 เชื่อมต่อ SqlConnection สาธารณะ;
22 สตริงสาธารณะ strFileID;
ข้อมูล UserInfo สาธารณะ 23 รายการ;
24 โมฆะที่ได้รับการป้องกัน Page_Load (ผู้ส่งวัตถุ EventArgs e)
25 {
26 strFileID = คำขอ QueryString["ID"];
27 ข้อมูล = (ข้อมูลผู้ใช้) เซสชัน ["EOfficeUserInfo"];
28
29 ถ้า (strFileID == null)
30 {
31 การตอบสนอง.เปลี่ยนเส้นทาง("../ErrorMsg.aspx");
32}
33
34 DbLink db = DbLink ใหม่();
35 conn = db.Connect();
36
37 String strSQL = "เลือก * จาก Group_Files โดยที่ ID=" + strFileID; //+ " และ SendToUser = '" + info.UserName + "'";
38 SqlCommand cmd = new SqlCommand(strSQL, conn);
39 cmd.Connection.เปิด();
40 โดยใช้ (SqlDataReader sdr = cmd.ExecuteReader())
41 {
42 ถ้า (!sdr.Read())
43 {
44 การตอบสนอง.เปลี่ยนเส้นทาง("../ErrorMsg.aspx");
45 }
46 อื่น ๆ
47 {
48 การตอบสนอง เคลียร์();
49 สตริง strFileName = sdr["FileName"].ToString();
50 Response.ContentType = "แอปพลิเคชัน/OCTET-STREAM";
51 Response.AddHeader("การจัดการเนื้อหา", "ไฟล์แนบ;ชื่อไฟล์=" + HttpUtility.UrlEncode(strFileName));
52 การตอบสนองบัฟเฟอร์ = จริง;
53 Response.BinaryWrite((ไบต์[])sdr["FileBody"]);
54
55 //การตอบสนอง.เคลียร์();
56 //Response.ContentType = "application/octet-stream";
57 /**///////Response.AddHeader("ประเภทเนื้อหา", sdr["FileType"].ToString());
58 //Response.BinaryWrite((ไบต์[])sdr["FileBody"]);
59 }
60 }
61 //conn.ปิด();
62
63 /**//*
64 SqlDataAdapter da = SqlDataAdapter ใหม่ (strSQL, conn);
65 SqlCommandBuilder MyCB = SqlCommandBuilder ใหม่(ดา);
66 ชุดข้อมูล ds = ชุดข้อมูลใหม่ ("MyImages");
67 ไบต์[] MyData = ไบต์ใหม่[0];
68 da.Fill(ds, "MyImages");
69 DataRow myRow = ds.Tables["MyImages"].Rows[0];
70 String strFileName = Convert.ToString(myRow["FileName"]);
71 MyData = (ไบต์[])myRow["FileBody"];
72 int ArraySize = ใหม่ int();
73 ArraySize = MyData.GetUpperBound(0);
74 FileStream fs = FileStream ใหม่(@"C:\Download" + strFileName,
75 FileMode.OpenOrCreate, FileAccess.Write);
76 fs.เขียน (MyData, 0, ArraySize);
77 fs.ปิด();
78 */
79 //Response.Write("ดาวน์โหลดไฟล์" + strFileName + "สำเร็จ!");
80}
81}
82