我们如何使用asp.net将文件上传到数据库 [英] How we upload files into database using asp.net

查看:66
本文介绍了我们如何使用asp.net将文件上传到数据库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

HI ...我需要asp.net中的代码上传和检索文件

(视频,音频,图像)到数据库..任何人都可以帮助我

?????我只是尝试将文件保存到文件夹中并将路径存储到数据库中

HI... I need the code in asp.net to upload &retrieve Files
(video,audio,image) into a database.. Can Anyone help me
????? I just try to save the files into a folder & store the path into database

推荐答案

查看此文章



http: //www.dotnetgallery.com/kb/resource21-How-to-store-and-retrieve-images-from-SQL-server-database-using-aspnet.aspx [ ^ ]


Hai,



请查看我的代码,它可以帮助你..



Hai,

Please review my code it may help you..

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1">
<title>Upload Word Files to Database and Download files from database in asp.net
</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:fileupload id="fileUpload1" runat="server" xmlns:asp="#unknown" /><br />
<asp:button id="btnUpload" runat="server" text="Upload" onclick="btnUpload_Click" xmlns:asp="#unknown" />
</div>
<div>
<asp:gridview id="gvDetails" runat="server" autogeneratecolumns="false" datakeynames="Id" xmlns:asp="#unknown">
<HeaderStyle BackColor="#df5015" Font-Bold="true" ForeColor="White" />
<columns>
<asp:boundfield datafield="Id" headertext="Id" />
<asp:boundfield datafield="FileName" headertext="FileName" />
<asp:templatefield headertext="FilePath">
<itemtemplate>
<asp:linkbutton id="lnkDownload" runat="server" text="Download" onclick="lnkDownload_Click"></asp:linkbutton>
</itemtemplate>
</asp:templatefield>
</columns>
</asp:gridview>
</div>
</form>
</body>
</html></html>





之后在代码中写下面的代码





After that write the following code in code behind

using System;
using System.Data.SqlClient;
using System.IO;
using System.Web.UI.WebControls;



string strCon = "Data Source=SureshDasari;Integrated Security=true;Initial Catalog=MySampleDB";
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindGridviewData();
}
}
// Bind Gridview Data
private void BindGridviewData()
{
using (SqlConnection con=new SqlConnection(strCon))
{
using (SqlCommand cmd=new SqlCommand())
{
cmd.CommandText = "select * from FileInformation";
cmd.Connection = con;
con.Open();
gvDetails.DataSource = cmd.ExecuteReader();
gvDetails.DataBind();
con.Close();
}
}
}
// Save files to Folder and files path in database
protected void btnUpload_Click(object sender, EventArgs e)
{
string filename = Path.GetFileName(fileUpload1.PostedFile.FileName);
Stream str = fileUpload1.PostedFile.InputStream;
BinaryReader br = new BinaryReader(str);
Byte[] size = br.ReadBytes((int) str.Length);
using (SqlConnection con=new SqlConnection(strCon))
{
using (SqlCommand cmd=new SqlCommand())
{
cmd.CommandText = "insert into FileInformation(FileName,FileType,FileData) values(@Name,@Type,@Data)";
cmd.Parameters.AddWithValue("@Name", filename);
cmd.Parameters.AddWithValue("@Type", "application/word");
cmd.Parameters.AddWithValue("@Data", size);
cmd.Connection =con;
con.Open();
cmd.ExecuteNonQuery();
con.Close();
BindGridviewData();
}
}
}
// This button click event is used to download files from gridview
protected void lnkDownload_Click(object sender, EventArgs e)
{
LinkButton lnkbtn = sender as LinkButton;
GridViewRow gvrow = lnkbtn.NamingContainer as GridViewRow;
int fileid = Convert.ToInt32(gvDetails.DataKeys[gvrow.RowIndex].Value.ToString());
string name, type;
using (SqlConnection con=new SqlConnection(strCon))
{
using (SqlCommand cmd=new SqlCommand())
{
cmd.CommandText = "select FileName, FileType, FileData from FileInformation where Id=@Id";
cmd.Parameters.AddWithValue("@id", fileid);
cmd.Connection = con;
con.Open();
SqlDataReader dr = cmd.ExecuteReader();
if(dr.Read())
{
Response.ContentType = dr["FileType"].ToString();
Response.AddHeader("Content-Disposition", "attachment;filename=\"" +dr["FileName"] + "\"");
Response.BinaryWrite((byte[])dr["FileData"]);
Response.End();
}
}
}
}


这篇关于我们如何使用asp.net将文件上传到数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆