誰かがこの問題に遭遇したかどうかはわかりません。問題を再現するための手順は次のとおりです。
手順: 1. リスト --> 担当者ページに移動します。2. [エクスポート] ボタンをクリックして、担当者リストの .XLS レポートを生成します。3. .XLS レポートを閉じて、連絡先リストなどの他のページに移動します。4. 連絡先リストで、[閉じる] ボタンをクリックして、[連絡先] リスト ページにリダイレクトします。
想定: - ページには連絡担当者リスト ページが表示される必要があります。
実際: - モジバキ文字を含む奇妙なページが表示されます。この URL の画像を参照してくださいhttp://i.imgur.com/dIsZc.png
アクティブ レポートを使用して Excel を生成するコードは次のとおりです。
private static void PushContentToHttp(ActiveReport report, MemoryStream msData, string fileName, string url) {
report.Run();
XlsExport xls = new XlsExport();
xls.DisplayGridLines = true;
xls.AutoRowHeight = true;
xls.Export(report.Document, msData);
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.ClearContent();
HttpContext.Current.Response.ClearHeaders();
HttpContext.Current.Response.Buffer = true;
HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache);
HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
HttpContext.Current.Response.AddHeader("Content-Length", msData.Length.ToString());
HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename= \"" + fileName + ".xls\"");
HttpContext.Current.Response.AddHeader("Refresh", "3; url=" + url);
HttpContext.Current.Response.Charset = "utf-8";
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding(1252);
//HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("windows-1250");
HttpContext.Current.Response.BinaryWrite(msData.ToArray());
HttpContext.Current.Response.End();
// HttpContext.Current.Response.Redirect(url,true);
}
どんな助けでも大歓迎です!どうもありがとう!:)