2010-11-28 18 views
2

appcodeの.aspxクラスと.csクラスの違いは何ですか? =「私たちは一緒に保存page_name_what」タグの継承を言及し、私はそれがデフォルトでaspx.csだいくつかのaspxクラスを書くとき.aspx vs .csクラス

はSystem.Web.UI.Pageを継承し、pageディレクティブで のaspx paegだ、我々はそれを継承させるカント.csクラスのappcodeのようなものは、このすべて私を混乱させる私にこれを詳しく教えてください。

答えて

5

aspxファイルには、ページマークアップが含まれています。 ASP.NETによって自動的にコードに変換されます。

csファイルには、code behindページ(初期化、イベントハンドラなど)が含まれています。そのコードを自分で書く必要があります。

EDIT:ページをコンパイルするとき、ASP.NETは、実際のコードビハインドクラスから継承するクラスにマークアップを変換し、例えば:@ Page指令のInherits属性が分離コードにページのマークアップを関連付けます背後にあるあなたのコード(例えばPage_Load)でautowiredイベントハンドラがprotectedなくprivateでなければならない理由です

class __Generated_YourPage : YourPage 
{ 
} 

:のようなもの。

この属性を変更することはできますが、それに応じてコードビハインドファイルのクラス名を変更する必要があります。マークアップから生成されたコードは、そのクラスが見つからないためコンパイルされません継承する。

+0

aspxページのsirのthatheritタグは何ですか、deflautは保存したページ名を変更しません。コードではページを継承します。それは他の.csクラスのappcodeを継承しています...継承ラリーを混乱させてください。この – NoviceToDotNet

+0

で私を詳しく教えてください。他のHTMLページのために他のコードを継承する必要があるかもしれません。 beacause私はこれを決してしなかった? – NoviceToDotNet

+0

@NoviceToDotNet、私は決してそれをしなかった。他の*ページの背後にあるコードにマークアップをバインドするのはあまり意味がないと思います。特に、基本の 'Page'クラスを作成して、ほとんどのバージョンのASP.NETでそのクラスからすべてのページを派生させることができるからです。 –

関連する問題