2

私はaspxドキュメントを持っています( 、、、、nadaについてaspは何も知りません)。ほとんどの場合、これは通常のhtmlテーブル構造ですが、ある種の動的コンテンツを挿入しているように見えるaspの文字列があります。それらは次の形式になっています。.netaspx

<asp:Image ID="imgTopImage" runat="server" ImageUrl="~/Images/topbar.jpg" />    
<asp:Label ID="lblStyleCaption" runat="server" CssClass="label_caption" Text="Theme: " Visible="false" />
<asp:DropDownList ID="dropStyles"  Width="150" runat="server" AutoPostBack="true" />

これらのいずれかを削除するたびに、たとえば、タグの付いた行のように無害なものを削除するとasp:Image、ページを読み込むときに実行時エラーが発生します。それは非常に特別です。私の質問は、これがどういうわけかコンパイルされているのか、それがとても壊れやすいのかということです。を変更するだけでもエラーが発生topbar.jpgsomething.pngます。これがコンパイルされた元のファイルを追跡する必要がありますか、それともこの通常のサーバー側asp(x?)は、他の方法で変更を間違えていますか?

4

1 に答える 1

3

ASPXページはコンパイルされ、それらのタグはサーバーに認識されているオブジェクトを参照するため、それらを削除するとエラーが発生する可能性があります。

まず、素人の言葉でいくつかの基本

ASPで始まるタグ:(例、<ASP:Button id="btnSubmit" runat="Server" Text="Click Me" />

標準のhtmlボタンではありません。それらはサーバーコントロールです。ブラウザに送信されるHTMLを生成するとき、ASP.NETランタイムはサーバーコントロールを調べ、ページにアクセスするブラウザに応じて適切なコンテンツを作成します。

Buttonコントロールの場合、通常は標準のhtmlボタンですが、ランタイムはボタンのサーバー側クリックイベントを処理するためのJavaScriptなども生成します。

コントロールを削除したときにエラーが発生する可能性がある理由:

多くの場合、これらのコントロールにアクセスするために記述されたサーバー側のコードがあります。たとえば、開発者は、何らかのイベントのためにTextまたはVisibleプロパティを変更することを決定した可能性があります。

この場合、<asp:Button>タグを削除すると、aspxページに存在しなくなったオブジェクトを参照するサーバー側のコードが存在するため、エラーが発生します。

サーバーコントロールのこれらのリンクの詳細:

また、基本的なビデオを見るか、http: //www.asp.net/get-startedのチュートリアルを実行することをお勧めします。


私はあなたの質問でこれに気づきました:

topbar.jpgをsomething.pngに変更するだけでも、エラーが発生します。

それは少し奇妙ですが、私はそれが起こる可能性がある少なくとも1つの方法を知っています...

通常、存在しない画像またはリンクされたページへの相対URLを含めると、Visual Studioは警告を表示します(エラーではありません)。警告によってコンパイルが妨げられることはありません。ただし、Visual Studioには、警告をエラーとして処理するように指示する設定があります。それはそれがコンパイルするのをブロックします。設定方法は次のとおりです。

[プロジェクト設定]>[構成プロパティ]からビルド設定を選択し、[警告をエラーとして扱う]設定をtrueに変更します。

警告をエラーとして扱いたくない場合は、設定をfalseに変更するだけです。

于 2012-12-04T18:03:09.343 に答える