CacheKeyDependencyObjectDataSource
を使用すると、非常に奇妙な動作に気付きました
CacheKeyDependency
宣言型 .aspx 構文でを設定すると、ObjectDataSource.Selecting
イベント (および Selected) が2 回呼び出されます!!! (もちろん、関連するデータベースもSelectMethod
2 回呼び出されます)
CacheKeyDependency
しかし、ObjectDataSource
選択イベントを削除すると、正しくは 1 回だけ発生します。
Selecting/Selected が 1 回だけ呼び出されると仮定すると、スピードは別として、コード ビハインド ロジックが壊れる可能性があります...
それに気づいた方はいますか?
この動作は、ASP.NET のバグに起因する可能性がありますか、それとも私のコードに何らかのバグがあるのでしょうか?
PS: イベントのタイムラインは次のようになります。太字は重複したものです。
PageLoad
ODS_Selecting
DataLayer Select
ODS_Selected
ODS_Filtering
GridView_DataBound
**ODS_Selecting**
**DataLayer Select**
**ODS_Selected**
ODS_Filtering
GridView_DataBound
GridView_PreRender