ASP.NET操作SQL Server 存储大文件的方法分享

    之前做了关于窗体应用程序关于使用SQL Server存储大文件的方法。这里记录的是关于网页操作SQL Server 存储大文件的方法

方法:

     1,将合同内容以文件的方式存放在本地的物理磁盘上。文件的格式可以自己指定,为了数据安全。咱们可以对文件加密哦)

     2,获取合同文件所在路径(这里最好是绝对路径,并且包含文件名)。

     3,将合同文件所在路径存储到数据库中,这样,大大减轻了数据从数据库输入输出的负担。

-----------------看图说话-------------------

   界面随便做的吐舌头


============                   注       意                ================    

这里和窗体不一样的地方是web只需要将文件名(含后缀)存放至数据库即可而窗体存放是将绝对路径存储到数据库中

=================================================    

-------------------代码---------------------------

创建按钮的关键代码如下:

  ///---获取包含该应用程序的目录的名称
string strCurrentPath = System.AppDomain.CurrentDomain.BaseDirectory;
 ///---实例化d对象
FileStream fileStream = new FileStream(strCurrentPath + "\\test.txt", FileMode.OpenOrCreate);
StreamWriter writer = new StreamWriter(fileStream);
///---将输入的信息录入文本文件中
writer.Write(textBox_input.Text);
///---关闭对象
writer.Close();
fileStream.Close();

///------获取当前插入数据库的行索引
int iRowIndex = int.Parse(AccessHelper.dataSet("SELECT COUNT(*) FROM [FileInfo]").Tables[0].Rows[0][0].ToString()) + 1;
///--插入数据库(ID + FILEPATH)
AccessHelper.excuteSql("INSERT INTO [FileInfo] VALUES('"+iRowIndex+"', '"+ "test.txt"+"')");
///---提示操作成功
///------!!!!!!!!!!! 然而并不能提示
 ///ClientScript.RegisterStartupScript(typeof(string), "print", "<script>alert('" + "操作成功" + "')'</script>");                           

显示文件内容按钮的关键代码如下:

  ///--显示数据库中的存储信息
 GridView1.DataSource = AccessHelper.dataSet("SELECT * FROM [FileInfo]").Tables[0];
GridView1.DataBind();
///----在文本框中显示指定路径上的文件内容,
///!!!!!!!!!!!注意,我这里的数据库中只有一条数据,显示出来的数据也只有一条,所以,就写死了行和列索引。
textBox_showFileContent.Text = System.IO.File.ReadAllText(HttpContext.Current.Server.MapPath(GridView1.Rows[0].Cells[1].Text));
///---获取gridview单元格的值
//textBox_showFileContent.Text = GridView1.Rows[0].Cells[1].Text;
///---获取指定文件名的绝对路径
///textBox_showFileContent.Text = HttpContext.Current.Server.MapPath("文件名(比如test.txt)");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值