实现文件下载功能!!急!!!!!!兄弟就剩这些分了!!!!!

xiaoxiao0451 2003-10-16 05:31:46
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

using System.Configuration;
using System.Data.SqlClient;
using System.IO;


namespace ProjectManage.Option
{
/// <summary>
/// CompanyFile 的摘要说明。
/// </summary>
public class CompanyFile : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid dglink;
protected System.Web.UI.WebControls.Label Label4;

private void Page_Load(object sender, System.EventArgs e)
{
if(!this.IsPostBack)
{
if(Session["ProjectName"]!=null)
{
string pname=Session["ProjectName"].ToString();
string app=ConfigurationSettings.AppSettings["Conn"];
SqlConnection conn=new SqlConnection(app);
string str="select Title,CheckFileDate,FileAddress,DDID from DocdispatchBase where Status=3 and DDID in (select DDID from DocDispatchSend where SendName='" + pname + "') order by CheckFileDate desc";
SqlDataAdapter adpter=new SqlDataAdapter(str,conn);
DataSet myDs=new DataSet();
conn.Open();
adpter.Fill(myDs,"DocDispatchBase");
conn.Close();
dglink.DataSource=myDs;
dglink.DataBind();
Session["myDs"]=myDs;
}
}
}

#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.dglink.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.dglink_ItemCommand);
this.dglink.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.dglink_PageIndexChanged);
this.dglink.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.dglink_ItemDataBound);
this.Load += new System.EventHandler(this.Page_Load);

}
#endregion

private void dglink_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
try
{
if(e.Item.ItemType== ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
((WebControl)e.Item.Cells[2].Controls[0]).CssClass="buttonClass";

((WebControl)e.Item.Cells[2].Controls[0]).Width=60;
}
}
catch(ArgumentOutOfRangeException ae)
{
Session["message"]=ae.Source+ae.Message;
Response.Redirect("VisitError.aspx");
}
}

private void dglink_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
dglink.SelectedIndex=-1;
dglink.CurrentPageIndex=e.NewPageIndex;
dglink.DataSource=(DataSet)Session["myDs"];
dglink.DataBind();
}

private void dglink_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(e.CommandName=="select")
{
String URL = @"C:\Inetpub\ftproot\little-mis\littleoa\Document\DocDispatch\";
//string URL=@"\\LITTLE-YHX\c$\Inetpub\ftproot\little-mis\littleoa\Document\DocDispatch\";
//String URL=@"ftp://192.168.0.201/little-mis/littleoa/Document/DocDispatch/";
// string URL=@"\\LITTLE-YHX\H:\Inetpub\ftproot\little-mis\littleoa\Document\DocDispatch\";
string filename=e.Item.Cells[3].Text;
string fileurl=URL+filename;
System.IO.FileInfo file=new FileInfo(fileurl);
Response.Clear();
Response.AddHeader("Content-Disposition","attachment;filename="+HttpUtility.UrlEncode(filename));

Response.AddHeader("Content-Length",file.Length.ToString());
Response.ContentType="text/html";
Response.WriteFile(file.FullName);
Response.End();
}
}
}
}

以上是我的代码,要实现的功能是在WEB页上下载文件。但文件不在WEB服务器上,而是局域网内的一台数据库服务器内。
WEB服务器是WIN2003数据服务器是WIN2000SERVER
用:String URL=@"ftp://192.168.0.201/little-mis/littleoa/Document/DocDispatch/";提示错误说不支持给定的路径格式,
当WEB页要下载文件的时候是访问局域网内的数据库服务器内的一个指定目录,需要一个身份验证。大家帮帮我,该怎么解决这个问题。
...全文
67 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaoxiao0451 2003-10-17
  • 打赏
  • 举报
回复
现在下载在本机可以实现,如果要在局域网内的数据库服务器上下载文件身份验证的问题没有解决???
cnhgj 2003-10-16
  • 打赏
  • 举报
回复
using System.Net;
webClient

webClient dn = new webClient;
dn.DownLoadFile(url,filename);
xiaoxiao0451 2003-10-16
  • 打赏
  • 举报
回复
顶!!!在线观注。。。

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧