トップ «前の日記(2006-12-10) 最新 次の日記(2006-12-12)» 編集

日々の破片

著作一覧

2006-12-11

_ tDiaryメンテ

2.0.4へ更新。あと、trackbackプラグインの設定が不完全だったので修正(tb.rbをtDiaryのルートへコピー)。

_ ASP.NETで作成したテーブルアダプタの継承

ASP.NETでテーブルアダプタを作るとソース無しのXSDだけになる。

このため、ちょっと動作を変えようとするといささか不便(単なるComponent派生クラスだし)。でも、利用するとわかるが、C#でインテリセンスもきくし、内部的にはタイプは生成されている。

したがって、既知のメソッドを操作することは可能。

以下の例では、コマンドタイムアウトの時間を初期値の30から120に変えている。

// クェリーに時間がかかり、
//「タイムアウトが発生しました。操作が完了する前にタイムアウトの時間が経過したか、サーバーが応答していません」
// という例外になるのに対応。接続タイムアウトについては既定の15秒を利用するので
// ここに来た場合は、ほぼ接続はできている。
internal class DerivedTableAdapter : FooTableAdapters.BarTableAdapter
{
    // データベースデザイナで生成したメソッド
    public override BarDataTable GetData(...)
    {
        // CommandCollectionプロパティにSqlCommandが保持されている
        foreach (System.Data.SqlClient.SqlCommand c in CommandCollection)
        {
            c.CommandTimeout = 120;
        }
        return base.GetData(...);
    }
}

2003|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|05|06|07|08|09|10|11|

ジェズイットを見習え