[seasar-dotnet:1397] [S2Form] プロパティの多いPONOをバインドすると時間がかかってしまう。

西山 はじめ [E-MAIL ADDRESS DELETED]
2009年 7月 6日 (月) 08:47:44 JST


お世話になっております。
西山です。

S2FormでPONOとS2FormのDataSourceにバインドする際、PONOに大量
のプロパティ、Formに大量のコントロールがあると、ものすごい時
間がかかってしまいます。

こちらの環境で、Formに100個程度のコントロール(Tabやユーザー
コントロール含む)、PONOに50個程度のプロパティを用意すると、
DataSourceプロパティにセットする際に10秒程度かかりました。

どうやら、S2Formの、_SetDataToControlsで PropertyInfo の
ForEach中に、_GetControlsを行っていることが原因のようです
が、これをForEachの外に出すと10分の1程度(1秒くらい)まで短
くなりました。

具体的には、S2Form.cs の440行目
 Control[] controls = _GetControls(this);
を、foreach の外に出したのですが、この修正は問題ないでしょうか?

以上よろしくお願いいたします。

-- 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
株式会社フジミック システム開発センター ソフトウェア開発部
 西山 創
[E-mail]:[E-MAIL ADDRESS DELETED]
 
〒140-0002 品川区東品川3-32-42 フジテレビ別館7F
[TEL]:03-5495-1060
++++++++++++++++++++++++++++++++++++++++++++++++++++++++



seasar-dotnet メーリングリストの案内