WEB FRAMEWORK: ASP.NET в C #
Эй, ребята, я искал во всем Интернете что-то, что показывало бы мне, как это сделать, но не смогу его найти.У меня есть страница, которая загружает информацию о человеке, в том числе резюме в виде документа DOCX или PDF.Я могу загрузить файл нормально, но я не знаю, как на другой странице загрузить файл, который был загружен в строку этого человека в базе данных.Вот код загрузки
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.IO;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
string filePath = FileUpload1.PostedFile.FileName;
string filename = System.IO.Path.GetFileName(filePath);
string ext = System.IO.Path.GetExtension(filename);
string contenttype = String.Empty;
switch (ext)
{
case ".doc":
contenttype = "application/vnd.ms-word";
break;
case ".docx":
contenttype = "application/vnd.ms-word";
break;
case ".pdf":
contenttype = "application/pdf";
break;
}
if (contenttype.Equals(String.Empty))
{
Response.Write(@"<script language='javascript'>alert('You have selected an invalid resume type.')</script>");
return;
}
Stream fs = FileUpload1.PostedFile.InputStream;
BinaryReader br = new BinaryReader(fs);
Byte[] bytes = br.ReadBytes((Int32)fs.Length);
SqlConnection myConnection = new SqlConnection("user id=;" + "password=;server=;" +
"Trusted_Connection=yes;" +
"database=contractors; " +
"connection timeout=30");
try
{
myConnection.Open();
}
catch (Exception el)
{
Console.WriteLine(el.ToString());
}
SqlCommand myCommand = new SqlCommand("Command String", myConnection);
myCommand.CommandText = "INSERT INTO contractor (firstName, lastName,phone,email,company,location,fileName,contentType,data,date) " +
"Values (@sqlfirstName,@sqllastName,@sqlphone,@sqlemail,@sqlcompany,@sqllocation,@Name,@ContentType,@Data,@sqldate)";
myCommand.Parameters.Add("@Name", System.Data.SqlDbType.VarChar).Value = filename;
myCommand.Parameters.Add("@ContentType", System.Data.SqlDbType.VarChar).Value = contenttype;
myCommand.Parameters.Add("@Data", System.Data.SqlDbType.Binary).Value = bytes;
myCommand.Parameters.Add("@sqlfirstName", System.Data.SqlDbType.VarChar, 50).Value = TextBox1.Text;
myCommand.Parameters.Add("@sqllastName", System.Data.SqlDbType.VarChar, 50).Value = TextBox2.Text;
myCommand.Parameters.Add("@sqlemail", System.Data.SqlDbType.VarChar, 75).Value = TextBox4.Text;
myCommand.Parameters.Add("@sqlphone", System.Data.SqlDbType.VarChar, 25).Value = TextBox3.Text;
myCommand.Parameters.Add("@sqlcompany", System.Data.SqlDbType.VarChar, 30).Value = TextBox5.Text;
myCommand.Parameters.Add("@sqllocation", System.Data.SqlDbType.VarChar, 70).Value = TextBox6.Text;
myCommand.Parameters.Add("@sqldate", System.Data.SqlDbType.DateTime, 30).Value = DateTime.Now;
myCommand.ExecuteNonQuery();
try
{
myConnection.Close();
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
Response.Write(@"<script language='javascript'>alert('You information has been submitted. Thank you.')</script>");
}
}
После загрузки информации у меня есть другая страница, которая отображает информацию для администратора с помощью gridview.Кто-нибудь поможет мне с тем, как перевести это обратно в загружаемый файл?Вот код ASP.net
<div>
<div class="article">
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" emptydatatext="No data available"
AllowSorting="True" AutoGenerateColumns="False"
DataSourceID="SqlDataSource1"
onselectedindexchanged="GridView1_SelectedIndexChanged">
<Columns>
<asp:CommandField ShowSelectButton="True" SelectText="Get Resume" />
<asp:BoundField DataField="firstName" HeaderText="First Name"
SortExpression="firstName" />
<asp:BoundField DataField="lastName" HeaderText="Last Name"
SortExpression="lastName" />
<asp:BoundField DataField="phone" HeaderText="Phone Number"
SortExpression="phone" />
<asp:BoundField DataField="email" HeaderText="Email" SortExpression="email" />
<asp:BoundField DataField="company" HeaderText="Company"
SortExpression="company" />
<asp:BoundField DataField="location" HeaderText="Location"
SortExpression="location" />
<asp:BoundField DataField="fileName" HeaderText="fileName"
SortExpression="fileName" Visible="False" />
<asp:BoundField DataField="id" HeaderText="id" InsertVisible="False"
ReadOnly="True" SortExpression="id" Visible="False" />
<asp:BoundField DataField="date" HeaderText="date" SortExpression="date" />
<asp:BoundField DataField="contentType" HeaderText="contentType"
SortExpression="contentType" Visible="False" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:contractorsConnectionString %>"
SelectCommand="SELECT [firstName], [lastName], [phone], [email], [company], [location], [fileName], [id], [date], [data], [contentType] FROM [contractor]">
</asp:SqlDataSource>
</div>
</div>