下载时HttpHandler不保留文件名
我正在使用httphandler在我的ASP.NET Web应用程序中提供文档.我可以让它在一个我无法完全弄清的一个问题上工作正常 - 未保留文件名. 例如,如果我试图提供一个名为"新患者信息表格"的文档,并且我的处理程序称为" getDocument.ashx",则将文件下载为" getDocument.docx.docx"和" getDocument(1). docx"," getDocument(2).docx"等.每次下载文件时. 出于安全原因,我想使用处理程序而不是直接链接到文件.我将实际文档保存在app_data文件夹中,以免直接浏览. 这是我正在使用的代码.我已经切换了"附件"和"内联"之间的内容处置,但似乎都没有对纠正此问题有任何影响. public void ProcessRequest(HttpContext context) { if (!int.TryParse(context.Request.QueryString["ID"],
8 2024-04-26
编程技术问答社区
谁可以使用C#WebRequest下载此图像?
图像链接:我的代码是: WebRequest req = WebRequest.Create("http://media.isna.ir/content/1435516708689_Mehdi+Ghasemi+%2818+of+18%29.jpg"); WebResponse response = req.GetResponse(); Stream stream = response.GetResponseStream(); Image img = Image.FromStream(stream); stream.Close(); 错误消息: 远程服务器返回一个错误:(500)内部服务器错误. 但我可以在Google Chrome和Firefox中看到该图像. 当然,我可以从另一个网站下载另一个图像.为什么这个网站的行为出错? 解决方案 这是因为某些服务器拒绝未指定用户代理的请求.更改通过用户代理的方法,它将起作用. HttpWebReque
24 2024-04-26
编程技术问答社区
下载多个文件 WebClient
我正在尝试下载多个文件,但是它无法正常工作. 有人可以告诉我这个脚本怎么了,因为我已经尝试了很多事情,而且真的不知道该怎么做. public static void DownloadFile(string url) { WebClient client = new WebClient(); var name = url.Substring(url.LastIndexOf('/')).Remove(0, 1); foreach (var item in urls) { client.DownloadFile(item, "C:\\" + name); } } private void btnGo_Click(object sender, EventArgs e) {
10 2024-04-26
编程技术问答社区
从ASP.net MVC项目中下载文件的动作链接和方法
我在Visual Studio中有一个ASP.NET Core MVC项目.我已经在项目中添加了一个名为下载的文件夹,并将文件" readme.txt"添加到该文件夹​​中.我正在尝试使用户下载文件.我认为我有: @Html.ActionLink("Readme.txt", "ReadMe", "Download") 这调用了下载Controller中的读数操作.但是,过去一个小时我一直在努力编写返回文件的动作方法. 我认为这样的事情应该这样做,但是IDE无法识别服务器,我找不到解决它的导入.我已经尝试使用system.web,并且它不起作用. public FileResult ReadMe() { string filename = "ReadMe_2.1.txt"; string serverpath = Server.MapPath("~/Download/"); string filepath = serverpath + file
4 2024-04-26
编程技术问答社区
通过启动Chrome进程下载文件
我想通过启动新的Chrome过程来下载文件.我找到了参数" - 下载",因此解决方案应为" Chromepath-Download URI". ( http://peter.sh/experiments/Chromium-command-command-line-line-switches/#下载) 我编写了代码以在C#中启动该过程,是的,我知道还有其他选项可以像网络电机一样执行此操作,但是我不想在我的代码中实现下载本身. string FILEURI = "example.org/file.png"; System.Diagnostics.Process prozess = new System.Diagnostics.Process(); prozess.StartInfo.FileName = @"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"; prozess.StartInfo.Argumen
4 2024-04-26
编程技术问答社区
传递生成的XML文件而不保存到磁盘
我有一个大型的Web表单应用程序,我希望允许用户导出其数据,以防他们不想一次完成整个表单.然后,当他们返回时,他们可以导入数据并继续关闭的位置. 原因是客户要求的一部分是不使用数据库. 我已经到达了我创建一个包含所有表单数据的XML文件的地步,但是我希望客户能够下载该XML文件,而无需将应用程序保存到服务器,甚至暂时. 是否可以创建XML文件并通过流/附件将其传输到客户端,而无需将其保存到磁盘? 我正在使用c#asp.net 解决方案 您可以写入httpresponse: HttpResponse response = HttpContext.Current.Response; string xmlString = "blah"; string fileName = "ExportedForm.xml"; response.StatusCode = 200;
12 2024-04-26
编程技术问答社区
在asp.net中下载生成html文件的c#代码
我正在动态生成HTML文件.它由CS和图像形成.我正在寻找应该可以在按钮上执行的代码,并询问位置保存文件.此外,它应该下载有关HTML文件中引用的关注资源文件.我必须做什么代码?我可以使用WebClient吗? 解决方案 在ASP.NET中没有"保存为"对话框.由于它正在浏览器中运行.您无权访问用户的文件系统,包括另存为对话框. 但是,您可以将用户发送一个文件作为附件,大多数浏览器都会显示一个对话框,询问用户是保存文件还是打开文件.也许用户会选择保存它. Response.ContentType = "application/octet-stream" (or content type of your file). Response.AppendHeader("content-disposition", "attachment;filename=" & strFileName) 您可以创建一个情况,如果您通过URI提供文件,请参见 this post. 其他
8 2024-04-26
编程技术问答社区
用c#从FTP下载,失败时不能重试
我有一个从ftp下载zip文件的应用程序. 很多次文件下载时会遇到连接问题,所以我必须重试,但我做不到. 当我尝试再次使用此行" reader = wendesp.getResponseStream();"再次下载de文件时我得到了关注Messagge"该过程无法访问文件XXX,因为它是由另一个过程使用的".我决定关闭捕获量中的作者流(memstream),有时它可以正常工作,但是有时候,当我试图再次求助时,它不起作用,给我一个时间. 是否有清晰的方法可以重试下载FTP的文件? 编辑:我看到我可以再次下载第一个失败的文件,但是当另一个文件失败时,我无法从请求中获得响应,然后gimme time of time 这是代码: FtpWebResponse response = null; FtpWebRequest request = null; Stream memStream = null; Stream reader = null; Director
6 2024-04-26
编程技术问答社区
在背景工作程序中重复使用DownloadFile的问题
我有一个简单的类: public class DownloadFile { ... public string GetFile(string fileUrl, string pathOut) { using (WebClient wc = new WebClient()) { wc.DownloadFile(new Uri(fileUrl), pathOut); return pathOut; } } } 我从BackgroundWorker 2次调用它是为了下载和安装2个文件(在此处执行自定义安装程序). 问题是,第一个文件下载并正常安装,但是第二个文件挂在wc2.DownloadFile(new Uri(fileUrl), pathOut);行上,永远不会从那里出来! 使用using我每次使用时都处置WebClient,所以我可以说:
6 2024-04-26
编程技术问答社区
你如何使用C#从最新的Team City构建中以编程方式下载工件?
我了解httpclient并获得过程.我想在这里找到的是与Team City一起工作的正确URL/语法. 我一直在尝试使用示例 restdocumentation 但是,它们都需要一个构建.这是一个独特的构建号,随着每个构建的变化.我尝试了几种与buildId=lastSuccesful的组合,但我似乎无法正确地使语法正确.我已经能够创建一个链接,该链接在粘贴到Web浏览器中时成功下载了特定的构建,但是,当我尝试以编程方式获取它时,我会得到400个未经授权的例外. 我在想,在使用REST API之前,我需要以某种方式登录Team City? 无论如何,这可能是一个简单的操作,我似乎无法破译执行的步骤. 所以,这是我认为需要采取的步骤,但是我不知道如何完成它们. 从编程上登录到团队城市. (现在对我有用) 为我的项目获得最后一个成功构建的构建. (帮助!!) 下载与上述构建相关的工件. (现在对我有用) 我非常感谢您完成上述任何帮助. 谢
8 2024-04-26
编程技术问答社区
在asp.net中下载生成html文件的c#代码
我正在动态生成HTML文件.它由CS和图像形成.我正在寻找应该可以在按钮上执行的代码,并询问位置保存文件.此外,它应该下载有关HTML文件中引用的关注资源文件.我必须做什么代码?我可以使用WebClient吗? 解决方案 在ASP.NET中没有"保存为"对话框.由于它正在浏览器中运行.您无权访问用户的文件系统,包括另存为对话框. 但是,您可以将用户发送一个文件作为附件,大多数浏览器都会显示一个对话框,询问用户是保存文件还是打开文件.也许用户会选择保存它. Response.ContentType = "application/octet-stream" (or content type of your file). Response.AppendHeader("content-disposition", "attachment;filename=" & strFileName) 您可以创建一个情况,如果您通过URI提供文件,请参见 this post. 其他
6 2024-04-26
编程技术问答社区
版本控制服务器-获取特定日期/时间的文件的最新版本
我有一个程序使用以下代码从TFS服务器获取最新版本的文件. TeamFoundationServer myTFS = TeamFoundationServerFactory.GetServer(myURL); VersionControlServer myVCS = (VersionControlServer)myTFS .GetService(typeof(VersionControlServer)); ItemSet downloadItems = myVCS.GetItems(myDirectory, RecursionType.Full); foreach (Item item in downloadItems.Items) { item.DownloadFile(myDownloadPath); } 我希望能够指定一个日期和时间,而不是获得最新版本,并在此时间点获取项目集.然后,在下载文件调用中,我想在指定的日期和时间中获取项目集中的最新版本. 我看到
10 2024-04-25
编程技术问答社区
从服务器上的谷歌驱动器下载文件
我使用JavaScript选择器从我的Google驱动器中获取文件,它运行良好,然后从驱动器下载URL和acces_token 我想从我的服务器上下载此文件,然后将URL和ACCES_TOKEN(with Ajax)partion(ajax)path,没问题 在服务器上,我将获得此代码的数据(它工作了!!!) public void DownloadFile(string url, string AccessToken) { try { byte[] BB; using (WebClient wc = new WebClient()) { wc.Headers.Add("Authorization", "Bearer " + AccessToken); BB = wc.DownloadData(url)
12 2024-04-25
编程技术问答社区
使用C#在asp.net中下载文件
如何在asp.net中下载文件? 这是我为上传的工作: 我将文件上传到网站中,并将其保存到这样的数据库中: string CVPath = null; if (uploadfiles.HasFile) { string file = uploadfiles.FileName; uploadfiles.PostedFile.SaveAs(Server.MapPath(".") + "//CV//" + file); CVPath = "~//ProfileImages//" + file; FileName.InnerText = file; } else CVPath = ""; 然后我将" CVPath"保存在数据库中 解决方案 要下载文件,首先您需要将所有内容读取到字符串. MemoryStream ms = new MemoryStream(); TextWriter tw = new
10 2024-04-25
编程技术问答社区
下载有回复的项目
我想允许客户下载附件.这里attachment.AttachmentContent是文件中的字节数组.当我单击按钮下载附件时,它将在下面运行此代码.但是我有以下脚本错误.我该怎么办? uck sys.webforms.pagerequestmanagerparsererrorexception: sys.webforms.pagerequestmanagerparsererrorexception:消息 无法解析从服务器接收的.为此的常见原因 错误是通过呼叫响应修改响应的错误.write.write(), 启用了响应过滤器,httpmodules或服务器跟踪.细节: 错误解析接近'���������Jfif``''. Attachment attachment = _attachmentService.GetAttachmentBytesById(int.Parse(e.CommandArgument.ToString())); Response.Clear(); Resp
16 2024-04-25
编程技术问答社区
用C#从URL中下载.webp图片
我正在尝试从 下载图像 使用WebClient. 当我浏览Chrome中的图像时,图像就在那里: URL以.jpg结尾,但图像为.webp格式. using (WebClient wb = new WebClient()) { wb.DownloadFile("http://aplweb.soriana.com/foto/fotolib//14/7503003936114/7503003936114-01-01-01.jpg", "image.jpg"); } 我尝试过 .downloaddata(),异步方法,httpclient,WebRequest直接. 有什么想法吗? 解决方案 您的代码很好,但这是服务器特定的行为.添加一些请求标题可以解决此问题. 这是一个使用HttpClient 的示例 class Program { private static
6 2024-04-25
编程技术问答社区
从服务器下载一个文件夹到本地主机
我有一个代码来降低一个特定文件,该文件存储在服务器上的特定位置... 例如,我在服务器的c:驱动器中有一个untitled.bmp,然后使用特定代码下载到我的本地主机... protected void Button1_Click(object sender, EventArgs e) { string filepath = (@"C:\untitled.bmp"); // Create New instance of FileInfo class to get the properties of the file being downloaded FileInfo myfile = new FileInfo(filepath); // Checking if file exists if (myfile.Exists) { // Cl
4 2024-04-25
编程技术问答社区
如何改变这个代码以下载大于2GB的文件?
我正在使用此代码,它适用于较小的文件,但无法下载具有2GB的文件的文件. 我尝试使用 webclient "> webclient ,但它不适合我的代码或不适合我的代码此代码只是试图弄清楚如何使用该代码下载2GB文件.谢谢 System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url_); //request.Proxy = WebRequest.GetSystemWebProxy(); System.Net.HttpWebResponse response = (System.Net.HttpWebResponse)request.GetResponse(); ServicePoint sp = request.ServicePoint; sp.ConnectionLimit = MAX_THREADS; response.Close(); // ge
6 2024-04-25
编程技术问答社区
等待下载完成
我正在尝试创建一个简单的程序来下载一些文件.我已经尝试了一些在网络上找到的现成解决方案,但我无法按照自己的方式使其正常工作.我正在使用: private void startDownload(string toDownload, string saveLocation) { Thread thread = new Thread(() => { WebClient client = new WebClient(); client.DownloadProgressChanged += new DownloadProgressChangedEventHandler(client_DownloadProgressChanged); client.DownloadFileCompleted += new AsyncCompletedEventHandler(client_D
4 2024-04-25
编程技术问答社区
无法从URL Xamarin Form下载图片
我正在开发一个Xamarin应用程序,该应用程序从数据库中重新录制信息,取/选择照片并将其上传到远程服务器,从远程服务器显示此图像,用户可以通过点击并按下按钮删除它们.最后一步是将存储在服务器中的图像下载到本地设备库. 这是我当前的按钮点击事件: private void button_download_image_Clicked(object sender, EventArgs e) { Uri image_url_format = new Uri(image_url); WebClient webClient = new WebClient(); try { webClient.DownloadDataAsync(image_url_format); webClient.DownloadDataCompleted += webClie
10 2024-04-25
编程技术问答社区