Archive for the ‘ASP.NET’ Category

Windows XP pro
Visual Studio 2005 (ASP.NET Webアプリケーション)
MS Office Excel 2003,2007
—————————————————
■内容
スタイルシートで背景色や罫線を変更しているGridViewコントロール
の、データ・CSSをExcelに出力する。

‘出力ファイル名
Dim exportFileNm as String = “testFile”

‘CSSファイルパス
Dim cssFilePath as String = Server.MapPath(“.”) & “\App_Themes\Themes\Report_excel.css”

‘ASP.NETサーバコントロールの出力ストリームに書込む、Htmlテキストを格納
Dim writer As HtmlTextWriter

‘MyBase==System.Web.UI.Page
MyBase.Response.ContentType = “application/vnd.ms-excel”
MyBase.Response.AppendHeader(“content-disposition”, “attachment;filename=” & exportFileNm & “.xls”)
writer = New HtmlTextWriter(MyBase.Response.Output)
Response.ContentEncoding = System.Text.Encoding.GetEncoding(“Shift_JIS”)
Dim sReader As New StreamReader(cssFilePath)
Response.Write(“<meta http-equiv=””Content-Type”” content=””text/html; charset=Shift_JIS””>”)

‘スタイルシート埋め込み出力
Response.Write(“<style><!–table”)
Response.Write(sReader.ReadToEnd())
Response.Write(“–></style>” & vbNewLine)
sReader.Close()
sReader.Dispose()

‘検索条件などの本文書込み
Response.Write(“<table>”)
Response.Write(“<tr>”)
Response.Write(“<td>グリッドビューの結果を下に表示します。</td>”)  ‘タイトル出力
Response.Write(“</tr>”)
Response.Write(“</table>”)

‘グリッドビュー(GridView1)の1セルに、複数のCSSが設定されている場合は纏める
‘ex)ここではセルに2つのCSS「cssA」「cssB」がある場合は、「cssA_cssB」という名称に纏める
‘  この場合、CSSには予め「cssA_cssB」を定義しておく必要がある
For Each gr As GridViewRow In GridView1.Rows
    For Each tc As TableCell In gr.Cells
        tc.CssClass = tc.CssClass.Replace(” “, “_”)
    Next
Next

‘グリッドビュー内容読込み
Me.GridView1.RenderControl(writer)
writer.Flush()
Response.End()
writer.Close()

========================================

ASP.NET web.config

========================================

System.Web.UIWebControls.ImageButtonなどの処理時間が長い場合

(デフォルトは110秒? Windows2003 Server )

 ■web.configファイルの修正

ASP.NET構成の設定:要求の実行時間を制限 を指定する。

<system.web>

             <!– 要求の実行時間を制限(秒) –>

            <httpRuntime executionTimeout=”1800″ /> 

</system.web>

■     IIS ASP.NET構成の修正

1.スタート→管理ツール→IISマネージャー 

2.(対象のプログラムの)仮想ディレクトリを右クリック「プロパティ」を開く

3.「ASP.NET」タブの「構成の編集」ボタンを押下し、「ASP.NET 構成の設定」を開く

4.「アプリケーション」タブの「要求の実行のタイムアウト(秒)」の値が、

5.Web.configファイル「httpRuntime executionTimeout」要素の値が設定されていることを確認する。

 このプロパティを直に修正することでも設定可能。(web.configファイルも自動で更新される)

 ※     そもそも処理時間が長すぎる場合は、プログラムのチューニングを行うのが第一。

カレンダー
2018年4月
« 6月    
 1
2345678
9101112131415
16171819202122
23242526272829
30