ソースの行間(^o^)

このはてな日記にプログラムソースを載せる時にpre記法>|〜〜|<を使うけど、行間が広いのがどうも気になってた。

管理→デザイン→詳細デザイン のスタイルシートの設定に、

pre {
    line-height:130%;
}

を追加することで行間の調整ができる。

Exception throw時のStack Trace(^o^)

例外をcatchし、それをさらに上位に伝播(throw)させる場合、throwのコーディングの仕方によって上位で取得するStack Traceの内容が異なる。

private void StackTraceDisplay()
{
    try
    {
        CatchAndThrow();
    }
    catch(Exception ex)
    {
        string stackTrack = ex.ToString(); //スタックトレースの内容
    }
}
		
private void CatchAndThrow()
{
    try
    {
        ・・・・・
        this.sqlConnection1.BeginTransaction();
        ・・・・・
    }
    catch(Exception ex)
    {
        ・・・・・
        ① throw;   //無指定
        ② throw ex; //catchしたExceptionをそのままthrow
    }
}

上記①の場合

System.InvalidOperationException: 操作が無効です。接続は閉じています。
場所 System.Data.SqlClient.SqlConnection.GetOpenConnection()
場所 System.Data.SqlClient.SqlConnection.BeginTransaction(〜省略〜)
場所 System.Data.SqlClient.SqlConnection.BeginTransaction()
場所 ExceptionTest.MainForm.CatchAndThrow()
場所 ExceptionTest.MainForm.StackTraceDisplay()

上記②の場合

System.InvalidOperationException: 操作が無効です。接続は閉じています。
場所 ExceptionTest.MainForm.CatchAndThrow()
場所 ExceptionTest.MainForm.StackTraceDisplay()

throw exとコーディングするとそのメソッドより下位以下のトレースが出力されない。
障害調査用に多くの情報がほしければ、catch&throwをする際は単に「throw;」とした方がよい。

開発計画(^o^)

作りたいと思っているものを書いとく。

DotNetNuke

有料のものが多いのでいろいろ探しすより、自分で好きなように作る方が楽。DNNモジュールは意外と簡単に作れる。

PukiWikiのバグトラックプラグインみたいなやつ。

  • 索引付きHTML/TEXTモジュール

wikiによくあるページの先頭に見出しが付いて本文とリンクできるやつ。

俺様フレームワーク

秘密

見える化ツール

進行中。

JUDEFreeMind変換

以前作りかけて頓挫中。

案件工数の担当割振ツール

思いっきり仕事用。
作成中。

テストコードのコメント表示(NUnit改)

テストコードのXMLコメントにテスト内容を記述。その内容を画面表示、テスト結果とともにドキュメント出力。