1、附录 1 英文原文 Introduction to ASP.NET Pages and Inline Code and Share10 The ASP.NET Web Forms page framework is a scalable common language runtime programming model that can be used on the server to dynamically generate Web pages. Intended as a logical evolution of ASP (ASP.NET provides syntax compatibi
2、lity with existing pages), the ASP.NET page framework has been specifically designed to address a number of key deficiencies in the previous model. In particular, it provides the ability to create and use reusable UI controls that can encapsulate common functionality and thus reduce the amount of co
3、de that a page developer has to write, the ability for developers to cleanly structure their page logic in an orderly fashion (not spaghetti code), and the ability for development tools to provide strong WYSIWYG design support for pages (existing classic ASP code is opaque to tools). This section of
4、 the QuickStart provides a high-level code walkthrough of some basic ASP.NET page features. Subsequent sections of the QuickStart drill down into more specific details. ASP.NET pages are text files with an .htm file name extension. Pages consist of code and markup and are dynamically compiled and ex
5、ecuted on the server to produce a rendering to the requesting client browser (or device). They can be deployed throughout an IIS virtual root directory tree. When a browser client requests .htm resources, the ASP.NET runtime parses and compiles the target file into a .NET Framework class. This class
6、 can then be used to dynamically process incoming requests. (Note that the .htm file is compiled only the first time it is accessed; the compiled type instance is then reused across multiple requests). An ASP.NET page can be created simply by taking an existing HTML file and changing its file name e
7、xtension to .htm (no modification of code is required). For example, the following sample demonstrates a simple HTML page that collects a users name and category preference and then performs a form postback to the originating page when a button is clicked: Important: Note that nothing happens yet wh
8、en you click the Lookup button. This is because the .htm file contains only static HTML (no dynamic content). Thus, the same HTML is sent back to the client on each trip to the page, which results in a loss of the contents of the form fields (the text box and drop-down list) between requests. ASP.NE
9、T provides syntax compatibility with existing ASP pages. This includes support for code render blocks that can be intermixed with HTML content within an .htm file. These code blocks execute in a top-down manner at page render time. The below example demonstrates how render blocks can be used to loop
10、 over an HTML block (increasing the font size each time): Important: Unlike with ASP, the code used within the above blocks is actually compiled-not interpreted using a script engine. This results in improved runtime execution performance. ASP.NET page developers can utilize code blocks to dynamical
11、ly modify HTML output much as they can today with ASP. For example, the following sample demonstrates how code blocks can be used to interpret results posted back from a client. Important: While code blocks provide a powerful way to custom manipulate the text output returned from an ASP.NET page, th
12、ey do not provide a clean HTML programming model. As the sample above illustrates, developers using only code blocks must custom manage page state between round trips and custom interpret posted values. In addition to code and markup, ASP.NET pages can contain server controls, which are programmable
13、 server-side objects that typically represent a UI element in the page, such as a textbox or image. Server controls participate in the execution of the page and produce their own markup rendering to the client. The principle advantage of server controls is that they enable developers to get complex rendering and behaviors from simple building-block components, dramatically reducing the amount of code it takes to produce a dynamic Web page. Another advantage of server controls is that it is easy to customize their