HtmlButton.OnServerClickとonserverclick属性

ASP.NETの<button>タグには、onserverclick属性がある。
実は、ここにイベントハンドラ名を直接指定し、<script>タグにイベントハンドラの定義を書くと、ServerClickイベントに登録されて、押されたらOnServerClickを経由して呼ばれるようになっている。

HtmlButton.OnServerClick(EventArgs) メソッド (System.Web.UI.HtmlControls) | Microsoft Docs

Default.aspx.csは、

もはや空でいい。
Default.aspxは、

このようにイベントハンドラの定義とタグを1つのaspxファイルで完結させることができる。

これが
これが

これが、

こうなる
こうなる

こうなる。
この時、イベントハンドラブレークポイントを仕掛けておくと、

呼び出し履歴から、OnServerClickの後で、イベントハンドラが呼ばれてるのがわかる。
呼び出し履歴から、OnServerClickの後で、イベントハンドラが呼ばれてるのがわかる。

呼び出し履歴から、OnServerClickの後で、イベントハンドラが呼ばれてるのがわかる。
とはいえ、onserverclick属性とOnServerClickメソッドが、同じものなのか、どういう関係なのかは不明。

Sample/aspnet/HtmlButton/OnServerClick_onserverclick/src/HtmlButton_ at master · bg1bgst333/Sample · GitHub