5

それらが "<asp:" で始まると宣言されているという事実は、それらがサーバー コントロールであると推測するのに十分でしょうか? または、完全を期すために含まれているだけですか (たとえば、 <input runat="server" のサーバー コントロール宣言に似ています)。それとも何か特別な理由がありますか?

誤って見逃したときに、コンパイラーが見逃したと言うことはいつも私を悩ませます。「var」の背後にある考え方のようなものです-コンパイラがそれが何であるかを知っているなら..なぜわざわざそれを述べることを期待するのですか?

4

1 に答える 1

8

このフォーラムのスレッドから取得:

Internet Explorer は、DHTML の動作をサポートしています。

[asp:control 構文] は、サーバー コントロールを意味するものではありません。名前空間を持ち、クライアント マシンで実行されるクライアント DHTML コンポーネントを作成できます。また、名前空間は XHTML で許可されており、技術的には、必要に応じて、クライアント上の何かに asp 名前空間を使用できます。Runat="server" は名前空間の衝突を防ぎます。要素に runat="server" 属性がない場合、要素はそのままクライアント ブラウザに送信されます。したがって、ASP.NET ページでも HTML コンポーネント (HTC) を使用できます。

こちらをご覧ください

http://msdn.microsoft.com/workshop/author/behaviors/howto/creating.asp http://msdn.microsoft.com/workshop/author/behaviors/overview.asp

Mike Schinkelは、 runat=server が必要な理由を探るブログ投稿も行っています。

于 2009-07-17T14:54:11.323 に答える