2016-09-12 1 views
0
funktioniert

ich eine CSV-Datei mit StringBuilder Erstellung und ich versuche, die Datei mit dem folgenden Code zum Download:CSV-Datei herunterzuladen ist nicht in asp.net weil Respose.Write nicht

Response.Clear(); 
Response.Buffer = true; 
Response.AddHeader("content-disposition", "attachment;filename=Report.csv"); 
Response.Charset = "utf-8"; 
Response.ContentType = "text/csv"; 
Response.Output.Write(sb.ToString()); 
Response.Flush(); 
Response.End(); 

Ich habe den gleichen Code in anderen Projekten ohne Problem verwendet, aber in diesem, wenn ich auf die Export button klicken, wird der Code ausgeführt, aber nichts passiert, keine Ausnahme, kein Fehler, nichts.

auch versuchen, die folgenden: Response.Write(sb.ToString()); Und "application/text" oder application/csv

Jeder kann mich in die richtige Richtung, damit es funktioniert?

UPDATE

Aus irgendeinem Grund, den ich noch nicht verstehen, Response.Output.Write oder Response.Write arbeiten nicht, weil ich nicht alles bekommen können, nicht einmal einen einzelnen String oder JavaScript-Alarm.

Irgendeine Idee?

Antwort

0

Entfernen Sie diese Zeile

Response.Flush(); 

weil Ihr Response.Buffer = true.

und die Verwendung

Response.Write(sb.ToString()); 
Response.End(); 
+0

Immer noch das gleiche, es passiert nichts –

+0

Offenbar 'Response.Output.Write' oder' Response.Write 'funktionieren aus irgendeinem Grund nicht, weil ich nichts bekommen kann, nicht einmal einen String oder Javascript-Alarm. –

0

verwenden code.This Code wird für Sie arbeiten:

Response.Clear(); 
Response.Buffer = true; 
Response.AddHeader("content-disposition","attachment;filename=YourFileName.csv"); 
Response.Charset = "utf-8"; 
Response.ContentType = "application/text"; 
StringWriter sw = new StringWriter(); 
HtmlTextWriter hw = new HtmlTextWriter(sw); 
{YourControlId}.RenderControl(hw); 
Response.Output.Write(sw.ToString()); 
Response.Flush(); 
Response.End(); 
+0

Immer noch das gleiche, scheinbar 'Response.Output.Write' oder 'Response.Write' funktionieren aus irgendeinem Grund nicht, weil ich nichts bekommen kann, nicht einmal eine einzige Zeichenfolge oder Javascript-Alarm. –

+0

Haben Sie Ihren Code mit try-catch-Block umgeben und prüfen, ob eine Ausnahme ausgelöst wurde? –

Verwandte Themen