Button That Performs A Server-side Action And Returns A File To Download?
Jul 28, 2010
I have an ASP.NET page (using ASP.NET AJAX and the Telerik RAD components) that provides a data table and an option to download data in CSV format.I have a requirement that a single button allow the user to download a data set. I have a system set up that's nearly working for me based off the solution in
http://stackoverflow.com/questions/104601/asp-net-response-redirect-to-new-window
<asp:Button ID="ExportCsvButton" runat="server" Text="Download to CSV/Excel"
byte[] csvBytes = someLongOperation();
Session[EXPORTED_SESSION_KEY] = csvBytes;
Response.Redirect("myexportpage.aspx", true);
protected void Page_Load(object sender, EventArgs e)
{
Response.Clear();
Response.ClearHeaders();
Response.ClearContent();
Response.AppendHeader("content-disposition", "attachment; filename=" + "file.csv");
Response.ContentType = "text/csv";
Response.AddHeader("Pragma", "public");
Response.BinaryWrite(Session[OtherPage.EXPORTED_SESSION_KEY] as byte[]);
Response.Flush();
Response.End();
}
This actually works quite well. When I click the 'Export to CSV' button, the page's UpdateProgress kicks in and my loading overlay appears (it's a CSS div that covers the window when visible). This can take some time depending on the data set (potentially several minutes), at which point I'm getting a window popup with my file.
View 1 Replies
Similar Messages:
Mar 26, 2011
This below code i have used in my aspx page for file download.
Response.AppendHeader("content-disposition", "attachment; filename="" + emailAttachment.FileName + "";");
Response.ContentType = "application/octet-stream";
Response.OutputStream.Write(emailAttachment.Data, 0, emailAttachment.Data.Length);
Response.End();
This block of code display Download file Dialog for Open or Save the attached file.It's working fine in Mozila Firefox and IE8 but doesn't display Download file Dialog box in IE 7
View 2 Replies
Aug 19, 2010
how to download a file at a url programmatically on the server side without any user interaction?
View 4 Replies
Dec 30, 2010
I tried this method:
string alteredname = "/store/" + filenames;
string filepath = Server.MapPath(alteredname);
FileInfo file = new FileInfo(filepath);
Response.AddHeader("Content-Disposition", "Attachment;FileName:" + file.Name);
Response.AddHeader("Content-Length", file.Length.ToString());
Response.ContentType = "APPLICATION/OCTET-STREAM";
Response.Flush();
Response.TransmitFile(file.FullName);
Response.End();
but the downloaded file is losing extension. I am getting the file in the name of the page form which I am downloading.
View 9 Replies
Apr 29, 2010
Lets say I have a simple controller for ASP.NET MVC I want to test. I want to test that a controller action (Foo, in this case) simply returns a link to another action (Bar, in this case).How would you test TestController.Foo? (either the first or second link)
My implementation has the same link twice. One passes the url throw ViewData[]. This seems more testable to me, as I can check the ViewData collection returned from Foo(). Even this way though, I don't know how to validate the url itself without making dependencies on routing.The controller:
public class TestController : Controller
{
public ActionResult Foo()[code].....
View 1 Replies
Sep 2, 2013
I need to download a .mp3 file from a folder. during download a new blank page should open and after downloading it should close automatically.
View 1 Replies
Jul 12, 2010
I am calling a file download action from javascript:
$elem.click(function() {
window.location.href = 'MyController/MyFileDownloadAction';
});
The controller returns a file:
[code]...
This action has a pretty high likelyhood of throwing an exception (or at least not being able to return the file).
Due to the nature of the application (which contains a lot of dynamic content), I can't really redirect to an error page in this situation. The current page needs to stay open somehow.
So I'm ideally looking for something like a javascript pop-up, but afaik this isn't going to be possible since I don't know any way to return a javacript instruction in a non-ajaxed controller call. If I display an error page I need to force it to open in a new window some how. Is there any possible solution to this problem?
View 1 Replies
Feb 12, 2010
I want to download a pdf file on client side
View 3 Replies
Jan 4, 2010
i am using amazon s3 service. now i want to show download dialog box in my asp.net application when user come on download page. i am using amazon sdk.
View 1 Replies
Jan 29, 2010
It is about the efficiency, which chrome being light weight, fine for general web browsingI am thinking to use it as default browser when working on Web Applications. There are some limitation though which I know like, Could not use chrome when worked over an Rss Feed generator module, as chrome was not supporting the generated output.Which browser will make it a good combination with VS 2008, C#, Asp.Net dev Server for developing Asp.Net Web Applications.
View 4 Replies
Mar 7, 2010
I have a webpage with a form below -
<form action='https://www.sandbox.paypal.com/cgi-bin/webscr' method='post' name='frm'>
I have a button that does a postback to server then back to client and finally to the action attribute of the form element.When the page post back to the client the onload <script>document.frm.submit()</script> finally submits the form to the action attribute of the form.I would like to eliminate the unnessasay post back to the client.Below is the code the runs on the server.
If Page.IsPostBack =
True
Then [code]....
View 1 Replies
Nov 8, 2010
I want to create log user file download history.I have shown all of my in gridview and in template filed use hyperlink to download file.But I didn't get server side event to store data in sql for download history.I try to manage it using JavaScript but when pop blocker
catch file download then database entry two times ,
View 2 Replies
Jan 14, 2010
Like Windows' environment Openfiledialog control, is there any way that I can create a file browse button that will let me select a file and return the path and filename to a variable or a textbox or any other object?
The webform will contain two controls: a regular button that I will use to browse and select a file, and a gridview.that will display a list of the files that I've selected with the file browse button.
View 2 Replies
Jan 3, 2010
I've created my wonderful winforms app that I want to unleash upon the world, and now I am trying to create a simple website to host some basic information and link to the setup file (msi installer file ).
I have a button on the asp.net page and the setup file setupApp.msi in same folder as the asp.net page. I am currently trying the following:
Response.Redirect("http://./SetupApp.msi");
But this best guess at what to do is not working. Is there something wrong with Mime types here? What do I need to put in the click event to allow users to download this file?
View 1 Replies
Feb 18, 2010
To my understanding the clinet side can only send data to the server either by get or post. so basically either through query string (get) or through body of the page (post).
So when we upload a file from client machine and send it to server, what exactly is happening behind the scenes? are we doing a post?
View 2 Replies
May 19, 2010
I have an action in my controller:
RedirectToRouteResult Create(UserDTO UserDTO)
Which at some point decides with which HTML to respond after a post request by redirecting to an action:
return ModelState.IsValid ? RedirectToAction("ThanksCreate") : RedirectToAction("Register");
In my unit tests I would like to get hold of the 'views' modelstate somehow like this:
var modelState = result.ViewData.ModelState;
Assert.IsFalse( modelState.IsValid );
where 'result' (ViewResult) is the result of the action 'Create' depending on the submitted DTO. My dilemma is that my action 'returns' a RedirectToRouteResult which I thought is quite nice but it might not be testable or is it?
How could I get hold of the ModelState in my scenario?
View 1 Replies
Oct 26, 2010
This is what I'm trying to run:
[Code]....
When I browse to www.mysite.com/mycontroller/myaction/myid, everything works ok. But visiting www.mysite.com/mycontroller/myaction produces:Server Error in '/' Application.Object reference not set to an instance of an object.Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.
View 3 Replies
Apr 14, 2010
I have read alots of articles from fourms such as belowhttp://forums.asp.net/t/1346690.aspxhttp://forums.asp.net/t/1489818.aspxhttp://forums.asp.net/p/1426153/3189859.aspx#3189859
ScriptManager.RegisterStartupScript(Page, this.GetType(), "notify", "function pageLoad(){$find('confirmdelete')._displayConfirmDialog();}", true)
View 8 Replies
Nov 11, 2010
I'm working on an ASP.NET application. Currently when the user clicks "Save" on an item, we disable the Save button, change its text to "Saving..." and so on. This works fine, because the button causes a postback which results in a new page being loaded, on which the Save button is no longer disabled.
We now want to apply this to other actions: Publish (not much different from Save), Import (again, much like Save, but based on data the user has uploaded in a previous step), Export (downloads an XML file to the user) etc.
Export is causing me problems - the button stays disabled. I think this is because the server sends back an XML file rather than a new web page, and so the browser just displays the same page.
The server-side code is along the lines of
Response.Clear();
Response.BufferOutput = true;
Response.ContentType = "text/xml";
Response.AppendHeader("Content-Disposition", "attachment; filename=" + whatever);
[push file contents into Response.OutputStream]
Response.End();
a way of making the server send a fresh page back in the response as well as the XML, thus re-enablnig the button in the same manner that the other pages do, ora way of getting the browser/JS to re-enable the button once the file has been sent.
View 2 Replies
Apr 26, 2010
I have a gridview which bind from a database. It populates my data which is Name, Address, Pic, PicLocation. I have a question regarding downloading the Picture/Documents that the user will upload. In my PicLocation column, it contain where the picture is located(where i saved it, like C:Pictures) from the server while in my Pic column it contain where the picture was saved inside my program location (~Pictures).
My question is how can i download the picture that was uploaded by a user? I think I can use the PicLocation here. I am using VB as my language..
View 4 Replies
Jan 13, 2011
I'm usign the following funtion to download a file from griview link button.
This code works fine without the Update Panel in the form.
If i put grid inside the updatepanel, i can't download the file. shows System.WebForms Cannot parse file.
//protected void LnkDownload_Click(object sender, EventArgs e)
//{
// LinkButton Lnk = sender as LinkButton;
// string filepath = Server.MapPath(Lnk.CommandArgument.ToString());
// System.IO.FileInfo myfile = new System.IO.FileInfo(filepath);
// if (myfile.Exists)
// {
// Response.ClearContent();
// Response.AddHeader("Content-Disposition", "attachment; filename=" + myfile.Name);
// Response.AddHeader("Content-Length", myfile.Length.ToString());
// Response.ContentType = "application//octet-stream";
// Response.TransmitFile(myfile.FullName);
// Response.End();
// }
//}
View 5 Replies
Apr 13, 2012
In my project, I've created a download button. This button shall perform 3tasks:
1. Change label text
2. Download file
3. Make the button invisible
The following code changes the label text and make the button invisible:
Code:
Protected Sub btnDownload_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnDownload.Click
lblDownload.Text = "<h3>Thank you for downloading </h3>"
btnDownload.Visible = False
End Sub
When I add a piece of code that handles the file download, the label text is not changed and button remains visible.
Here is the code:
Code:
Protected Sub btnDownload_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnDownload.Click
Dim URL As String = "~/myfile.exe"
Dim fileInfo As FileInfo = New FileInfo(Server.MapPath(URL))
If fileInfo.Exists Then
Response.Clear()
[Code] ....
File downloading cancels other operations.
View 1 Replies
Sep 13, 2010
I'm trying to force a large (200+ MB) file to download that's on a remote server. The problem is that I can't use the "WriteFile()" function, since I'm not using a virtual path. Then, when I try:
Response.AppendHeader("content-disposition",
View 17 Replies
Dec 10, 2010
I have an action that will return partial view result if no error is found in the request , but when an error is found , how do I pass the error information back to client ?
Some error info now is in TempData["message"] , but some are model validation messages . The web client is using jQuery to make the ajax request (with $.ajax( ) call ) .
How does the jquery client distinguish between sucess or failure , and then acts appropriately to update a DIV that display TempData["message"] , and a DIV that consume the partial view result .
I was thinking perhaps a view-result can be encapsulated into a JSON result , and the JSON result will have fields to indicate the success/failure status , and the encoded markup of the partial view result .
View 3 Replies
Jun 16, 2015
I used updateProgress for Downloading File on button click.
it works but when downloading Completes, progress bar did not disappears.
View 1 Replies