1、毕业论文(设计)外文翻译外文原文BUILDINGASPNETWEBPAGESUNTILNOW,ALLOFTHEEXAMPLEAPPLICATIONSINTHISTEXTHAVEFOCUSEDONCONSOLEBASEDANDDESKTOPGUIBASEDFRONTENDSINTHENEXTTHREECHAPTERS,YOULLEXPLOREHOWTHENETPLATFORMFACILITATESTHECONSTRUCTIONOFBROWSERBASEDPRESENTATIONLAYERSUSINGATECHNOLOGYNAMEDASPNETTOBEGIN,YOULLQUICKLYREVIEWA
2、NUMBEROFKEYWEBCENTRICCONCEPTSHTTP,HTML,CLIENTSIDESCRIPTING,ANDSERVERSIDESCRIPTINGANDEXAMINETHEROLEOFMICROSOFTSCOMMERCIALWEBSERVERIISASWELLASTHEASPNETDEVELOPMENTWEBSERVER,WEBDEVWEBSERVEREXEWITHTHISWEBPRIMEROUTOFTHEWAY,THEREMAINDEROFTHISCHAPTERCONCENTRATESONTHESTRUCTUREOFASPNETWEBPAGESINCLUDINGTHESING
3、LEPAGEANDCODEBEHINDMODELANDEXAMINESTHECOMPOSITIONOFAPAGEDERIVEDTYPETHISCHAPTERALSOINTRODUCESTHEROLEOFTHEWEBCONFIGFILE,WHICHWILLBEUSEDINTHEWEBCENTRICCHAPTERSTOCOMETHEROLEOFHTTPWEBAPPLICATIONSAREVERYDIFFERENTFROMTRADITIONALDESKTOPAPPLICATIONSTOSAYTHELEASTTHEFIRSTOBVIOUSDIFFERENCEISTHATAPRODUCTIONLEVEL
4、WEBAPPLICATIONWILLALWAYSINVOLVEATLEASTTWONETWORKEDMACHINESOFCOURSE,DURINGDEVELOPMENTITISENTIRELYPOSSIBLETOHAVEASINGLEMACHINEPLAYTHEROLEOFBOTHTHEBROWSERBASEDCLIENTANDTHEWEBSERVERITSELFGIVENTHENATUREOFWEBAPPLICATIONS,THENETWORKEDMACHINESINQUESTIONMUSTAGREEUPONAPARTICULARWIREPROTOCOLTODETERMINEHOWTOSEN
5、DANDRECEIVEDATATHEWIREPROTOCOLTHATCONNECTSTHECOMPUTERSINQUESTIONISTHEHYPERTEXTTRANSFERPROTOCOLHTTPTHEHTTPREQUEST/RESPONSECYCLEWHENACLIENTMACHINELAUNCHESAWEBBROWSERSUCHASOPERA,MOZILLAFIREFOX,ORMICROSOFTINTERNETEXPLORER,ANHTTPREQUESTISMADETOACCESSAPARTICULARRESOURCETYPICALLYAWEBPAGEONTHEREMOTESERVERMA
6、CHINEHTTPISATEXTBASEDPROTOCOLTHATISBUILTUPONASTANDARDREQUEST/RESPONSEPARADIGMFOREXAMPLE,IFYOUNAVIGATETOHTTP/WWWINTERTECHCOM,THEBROWSERSOFTWARELEVERAGESAWEBTECHNOLOGYTERMEDDOMAINNAMESERVICEDNSTHATCONVERTSTHEREGISTEREDURLINTOAFOURPART,32BITNUMERICALVALUE,TERMEDANIPADDRESSATTHISPOINT,THEBROWSEROPENSASO
7、CKETCONNECTIONTYPICALLYVIAPORT80FORANONSECURECONNECTIONANDSENDSTHEHTTPREQUESTFORPROCESSINGTOTHETARGETSITETHEWEBSERVERRECEIVESTHEINCOMINGHTTPREQUESTANDMAYCHOOSETOPROCESSOUTANYCLIENTSUPPLIEDINPUTVALUESSUCHASVALUESWITHINATEXTBOX,CHECKBOXSELECTIONS,ETCINORDERTOFORMATAPROPERHTTPRESPONSEWEBPROGRAMMERSMAYL
8、EVERAGEANYNUMBEROFTECHNOLOGIESCGI,ASP,ASPNET,JSP,ETCTODYNAMICALLYGENERATETHECONTENTTOBEEMITTEDINTOTHEHTTPRESPONSEATTHISPOINT,THECLIENTSIDEBROWSERRENDERSTHEHTMLSENTFROMTHEWEBSERVERFIGURE311ILLUSTRATESTHEBASICHTTPREQUEST/RESPONSECYCLEFIGURE311THEHTTPREQUEST/RESPONSECYCLEHTTPISASTATELESSPROTOCOLANOTHER
9、ASPECTOFWEBDEVELOPMENTTHATISMARKEDLYDIFFERENTFROMTRADITIONALDESKTOPPROGRAMMINGISTHEFACTTHATHTTPISESSENTIALLYASTATELESSWIREPROTOCOLASSOONASTHEWEBSERVEREMITSARESPONSETOTHECLIENT,EVERYTHINGABOUTTHEPREVIOUSINTERACTIONISFORGOTTENTHISISCERTAINLYNOTTHECASEFORATRADITIONALDESKTOPAPPLICATION,WHERETHESTATEOFTH
10、EEXECUTABLEISMOSTOFTENALIVEANDKICKINGUNTILTHEUSERSHUTSDOWNTHEAPPLICATIONINQUESTIONGIVENTHISPOINT,ASAWEBDEVELOPER,ITISUPTOYOUTAKESPECIFICSTEPSTO“REMEMBER”INFORMATIONSUCHASITEMSINASHOPPINGCART,CREDITCARDNUMBERS,HOMEANDWORKADDRESSES,ETCABOUTTHEUSERSWHOARECURRENTLYLOGGEDONTOYOURSITEASYOUWILLSEEINCHAPTER
11、33,ASPNETPROVIDESNUMEROUSWAYSTOHANDLESTATE,MANYOFWHICHARECOMMONPLACETOANYWEBPLATFORMSESSIONVARIABLES,COOKIES,ANDAPPLICATIONVARIABLESASWELLASSOMENETPARTICULARTECHNIQUESSUCHASTHEASPNETPROFILEMANAGEMENTAPIUNDERSTANDINGWEBAPPLICATIONSANDWEBSERVERSAWEBAPPLICATIONCANBEUNDERSTOODASACOLLECTIONOFFILESHTM,ASP
12、,ASPX,IMAGEFILES,XMLBASEDFILEDATA,ETCANDRELATEDCOMPONENTSSUCHASANETCODELIBRARYORLEGACYCOMSERVERSTOREDWITHINAPARTICULARSETOFDIRECTORIESONAGIVENWEBSERVERASSHOWNINCHAPTER33,ASPNETWEBAPPLICATIONSHAVEASPECIFICLIFECYCLEANDPROVIDENUMEROUSEVENTSSUCHASINITIALSTARTUPORFINALSHUTDOWNTHATYOUCANHOOKINTOTOPERFORMS
13、PECIALIZEDPROCESSINGDURINGYOURWEBSITESOPERATIONAWEBSERVERISASOFTWAREPRODUCTINCHARGEOFHOSTINGYOURWEBAPPLICATIONS,ANDITTYPICALLYPROVIDESANUMBEROFRELATEDSERVICESSUCHASINTEGRATEDSECURITY,FILETRANSFERPROTOCOLFTPSUPPORT,MAILEXCHANGESERVICES,ANDSOFORTHINTERNETINFORMATIONSERVICESIISISMICROSOFTSENTERPRISELEV
14、ELWEBSERVERPRODUCT,ANDASYOUWOULDGUESS,ITHASINTRINSICSUPPORTFORCLASSICASPASWELLASASPNETWEBAPPLICATIONSWHENYOUBUILDPRODUCTIONREADYASPNETWEBAPPLICATIONS,YOUWILLOFTENNEEDTOINTERACTWITHIISBEAWARE,HOWEVER,THATIISISNOTAUTOMATICALLYSELECTEDASANINSTALLATIONOPTIONWHENYOUINSTALLTHEWINDOWSOPERATINGSYSTEMALSOBEA
15、WARETHATNOTALLVERSIONSOFWINDOWSCANSUPPORTIIS,SUCHASWINDOWSXPHOMETHUS,DEPENDINGONTHECONFIGURATIONOFYOURDEVELOPMENTMACHINE,YOUMAYWISHTOINSTALLIISBEFOREPROCEEDINGTHROUGHTHISCHAPTERTODOSO,SIMPLYACCESSTHEADD/REMOVEPROGRAMAPPLETFROMTHECONTROLPANELFOLDERANDSELECTADD/REMOVEWINDOWSCOMPONENTSCONSULTTHEWINDOWS
16、HELPSYSTEMIFYOUREQUIREFURTHERDETAILSNOTEIDEALLY,YOURDEVELOPMENTMACHINEWILLHAVEIISINSTALLEDBEFOREYOUINSTALLVISUALSTUDIO2008IFYOUINSTALLIISAFTERYOUINSTALLVISUALSTUDIO2008,NONEOFYOURASPNETWEBAPPLICATIONSWILLEXECUTECORRECTLYYOUWILLSIMPLYGETBACKABLANKPAGELUCKILY,YOUCANRECONFIGUREIISTOHOSTNETAPPLICATIONSB
17、YRUNNINGTHEASPNET_REGIISEXECOMMANDLINETOOLANDSPECIFYINGTHE/IOPTIONASSUMINGYOUHAVEIISPROPERLYINSTALLEDONYOURWORKSTATION,YOUCANINTERACTWITHIISFROMTHEADMINISTRATIVETOOLSFOLDERLOCATEDINTHECONTROLPANELFOLDERBYDOUBLECLICKINGTHEINTERNETINFORMATIONSERVICESAPPLETFORTHEPURPOSESOFTHISCHAPTER,YOUARECONCERNEDONL
18、YWITHTHEDEFAULTWEBSITENODESEEFIGURE312FIGURE312THEIISAPPLETTHEROLEOFIISVIRTUALDIRECTORIESASINGLEIISINSTALLATIONISABLETOHOSTNUMEROUSWEBAPPLICATIONS,EACHOFWHICHRESIDESINAVIRTUALDIRECTORYEACHVIRTUALDIRECTORYISMAPPEDTOAPHYSICALDIRECTORYONTHEHARDDRIVETHEREFORE,IFYOUCREATEANEWVIRTUALDIRECTORYNAMEDCARSRUS,
19、THEOUTSIDEWORLDCANNAVIGATETOTHISSITEUSINGAURLSUCHASHTTP/WWWCARSRUSCOMASSUMINGYOURSITESIPADDRESSHASBEENREGISTEREDWITHTHEWORLDATLARGEUNDERTHEHOOD,THISVIRTUALDIRECTORYMAPSTOAPHYSICALROOTDIRECTORYONTHEWEBSERVER,SUCHASCINETPUBWWWROOTASPNETCARSSITE,WHICHCONTAINSTHECONTENTOFTHECARSRUSWEBAPPLICATIONASYOUWIL
20、LSEELATERINTHISCHAPTER,WHENYOUCREATEASPNETWEBAPPLICATIONSUSINGVISUALSTUDIO2008,YOUHAVETHEOPTIONOFHAVINGTHEIDEGENERATEANEWVIRTUALDIRECTORYFORTHECURRENTWEBSITEAUTOMATICALLYIFREQUIRED,YOUARECERTAINLYABLETOMANUALLYCREATEAVIRTUALDIRECTORYBYHANDBYRIGHTCLICKINGTHEDEFAULTWEBSITENODEOFIISANDSELECTINGNEWVIRTU
21、ALDIRECTORYORONVISTA,SIMPLYADDVIRTUALDIRECTORYFROMTHECONTEXTMENUWHENYOUSELECTTHEOPTIONTOCREATEANEWVIRTUALDIRECTORY,YOUWILLBEPROMPTEDFORTHENAMEANDPHYSICALFOLDERTHATWILLCONTAINTHEWEBCONTENTTOILLUSTRATEWORKINGWITHIISANDTOSETUSUPFOROURFIRSTWEBEXAMPLE,CREATEANEWDIRECTORYONYOURHARDDRIVETHATWILLHOLDYETTOBE
22、GENERATEDWEBCONTENTFORTHISDISCUSSIONILLASSUMETHISDIRECTORYTOBECCODETESTSCARSWEBSITENOW,RIGHTCLICKTHEDEFAULTWEBSITENODEOFIISTOCREATEANEWVIRTUALDIRECTORYNAMEDCARSTHATMAPSTOTHISNEWDIRECTORYFIGURE313SHOWSTHEENDRESULTFIGURE313THECARSVIRTUALDIRECTORYWEWILLADDSOMECONTENTTOTHISWEBSITEINJUSTAMOMENTTHEASPNETD
23、EVELOPMENTSERVERPRIORTONET20,ASPNETDEVELOPERSWEREREQUIREDTOMAKEUSEOFIISVIRTUALDIRECTORIESDURINGTHEDEVELOPMENTANDTESTINGOFTHEIRWEBCONTENTINMANYCASES,THISTIGHTDEPENDENCYONIISMADETEAMDEVELOPMENTMORECOMPLEXTHANNECESSARYNOTTOMENTIONTHATMANYNETWORKADMINISTRATORSFROWNEDUPONINSTALLINGIISONEVERYDEVELOPERSMAC
24、HINETHANKFULLY,WENOWHAVETHEOPTIONTOUSEALIGHTWEIGHTWEBSERVERNAMEDWEBDEVWEBSERVEREXETHISUTILITYALLOWSDEVELOPERSTOHOSTANASPNETWEBAPPLICATIONOUTSIDETHEBOUNDSOFIISUSINGTHISTOOL,YOUCANBUILDANDTESTYOURWEBPAGESFROMANYDIRECTORYONYOURMACHINETHISISQUITEHELPFULFORTEAMDEVELOPMENTSCENARIOSANDFORBUILDINGASPNETWEBP
25、ROGRAMSONVERSIONSOFWINDOWSTHATDONOTSUPPORTIISINSTALLATIONSSUCHASWINDOWSXPHOMENOTEWEBDEVWEBSERVEREXECANNOTBEUSEDTOTESTORHOSTCLASSICCOMBASEDASPWEBAPPLICATIONSTHISWEBSERVERCANHOSTONLYASPNETWEBAPPLICATIONSAND/ORNETBASEDXMLWEBSERVICESWHENBUILDINGAWEBSITEWITHVISUALSTUDIO2008,YOUHAVETHEOPTIONOFUSINGWEBDEVW
26、EBSERVEREXETOHOSTYOURPAGESASYOUWILLSEEABITLATERINTHISCHAPTERHOWEVER,YOUAREALSOABLETOMANUALLYINTERACTWITHTHISTOOLFROMAVISUALSTUDIO2008COMMANDPROMPTIFYOUENTERTHEFOLLOWINGCOMMANDWEBDEVWEBSERVEREXEYOUWILLBEPRESENTEDWITHAMESSAGEBOXTHATDESCRIBESTHEVALIDCOMMANDLINEOPTIONSINANUTSHELL,YOUWILLNEEDTOSPECIFYANU
27、NUSEDPORTVIATHE/PORTOPTION,THEROOTDIRECTORYOFTHEWEBAPPLICATIONVIATHE/PATHOPTION,ANDANOPTIONALVIRTUALPATHUSINGTHE/VPATHOPTIONIFYOUDONOTSUPPLYA/VPATHOPTION,THEDEFAULTISSIMPLY/CONSIDERTHEFOLLOWINGUSAGE,WHICHOPENSANARBITRARYPORTTOVIEWCONTENTINTHECCODETESTSCARSWEBSITEDIRECTORYCREATEDPREVIOUSLYWEBDEVWEBSE
28、RVEREXE/PORT12345/PATH“CCODETESTSCARSWEBSITE“ONCEYOUHAVEENTEREDTHISCOMMAND,YOUCANLAUNCHYOURWEBBROWSEROFCHOICETOREQUESTPAGESTHUS,IFTHECARSWEBSITEFOLDERHADAFILENAMEDDEFAULTASPX,YOUCOULDENTERTHEFOLLOWINGURLHTTP/LOCALHOST12345/CARSWEBSITE/DEFAULTASPXMANYOFTHEEXAMPLESINTHISCHAPTERANDTHENEXTWILLMAKEUSEOFW
29、EBDEVWEBSERVEREXEVIAVISUALSTUDIO2008,RATHERTHANHOSTINGWEBCONTENTUNDERANIISVIRTUALDIRECTORYWHILETHISAPPROACHCANSIMPLIFYTHEDEVELOPMENTOFYOURWEBAPPLICATION,DOBEAWARETHATTHISWEBSERVERISNOTINTENDEDTOHOSTPRODUCTIONLEVELWEBAPPLICATIONSITISINTENDEDPURELYFORDEVELOPMENTANDTESTINGPURPOSESONCEAWEBAPPLICATIONISR
30、EADYFORPRIMETIME,YOURSITEWILLNEEDTOBECOPIEDTOANIISVIRTUALDIRECTORYNOTETHEMONOPROJECTSEEAPPENDIXBPROVIDESAFREEASPNETPLUGINFORTHEAPACHEWEBSERVERTHISMAKESITPOSSIBLETOBUILDANDHOSTASPNETWEBAPPLICATIONSONOPERATINGSYSTEMSOTHERTHANMICROSOFTWINDOWSIFYOUAREINTERESTED,CHECKOUTHTTP/WWWMONOPROJECTCOM/ASPNETFORDE
31、TAILSTHEROLEOFHTMLNOWTHATYOUHAVECONFIGUREDADIRECTORYTOHOSTYOURWEBAPPLICATION,ANDYOUHAVECHOSENAWEBSERVERTOSERVEASTHEHOST,YOUNEEDTOCREATETHECONTENTITSELFRECALLTHAT“WEBAPPLICATION”ISSIMPLYTHETERMGIVENTOTHESETOFFILESTHATCONSTITUTETHEFUNCTIONALITYOFTHESITETOBESURE,AVASTNUMBEROFTHESEFILESWILLCONTAINTOKENS
32、DEFINEDBYHYPERTEXTMARKUPLANGUAGEHTMLHTMLISASTANDARDMARKUPLANGUAGEUSEDTODESCRIBEHOWLITERALTEXT,IMAGES,EXTERNALLINKS,ANDVARIOUSHTMLBASEDUIWIDGETSARETOBERENDEREDWITHINTHECLIENTSIDEBROWSERTHISPARTICULARASPECTOFWEBDEVELOPMENTISONEOFTHEMAJORREASONSWHYMANYPROGRAMMERSDISLIKEBUILDINGWEBBASEDPROGRAMSWHILEITIS
33、TRUETHATMODERNIDESINCLUDINGVISUALSTUDIO2008ANDWEBDEVELOPMENTPLATFORMSSUCHASASPNETGENERATEMUCHOFTHEHTMLAUTOMATICALLY,YOUWILLDOWELLTOHAVEAWORKINGKNOWLEDGEOFHTMLASYOUWORKWITHASPNETNOTERECALLFROMCHAPTER2THATMICROSOFTHASRELEASEDANUMBEROFFREEIDESUNDERTHEEXPRESSFAMILYOFPRODUCTSSUCHASVISUALCEXPRESSIFYOUAREI
34、NTERESTEDINWEBDEVELOPMENT,YOUMAYWISHTOALSODOWNLOADVISUALWEBDEVELOPEREXPRESSTHISFREEIDEISGEAREDEXCLUSIVELYATTHECONSTRUCTIONOFASPNETWEBAPPLICATIONSWHILETHISSECTIONWILLMOSTCERTAINLYNOTCOVERALLASPECTSOFHTMLBYANYMEANS,LETSCHECKOUTSOMEBASICSANDBUILDASIMPLEWEBAPPLICATIONUSINGHTML,CLASSICCOMBASEDASP,ANDIIST
35、HISWILLSERVEASAROADMAPFORTHOSEOFYOUCOMINGTOASPNETFROMATRADITIONALDESKTOPAPPLICATIONDEVELOPMENTBACKGROUNDNOTEIFYOUAREALREADYCOMFORTABLEWITHTHEOVERALLPROCESSOFWEBPAGEDEVELOPMENT,FEELFREETOSKIPAHEADTOTHESECTION“PROBLEMSWITHCLASSICASP”译文ASPNET网页的生成目前为止,这篇文章中所有的示例程序都集中在基于控制台和基于桌面GUI的前端。在下面的三节中,你将知道NET平台如
36、何使用ASPNET技术构建基于浏览器的表示层,首先,快速回顾一下以网络为中心的几个概念HTTP,HTML,客户端脚本,服务器端脚本,然后了解微软商业WEB服务器IIS和ASPNET环境WEB服务器WEBDEVWEBSERVEREXE为了找到网站入门的方法,这一章的其余部分集中在ASPNET网页的结构上包括单网页和代码隐藏模型,同时还研究了网页派生类型的组成。另外还介绍了网页配置文件的作用,它将在以WEB为中心的章节中出现。HTTP的作用WEB应用程序同传统的桌面程序是有很大不同的至少可以这么说最明显的区别是生产级别的网络应用程序通常包含至少两个连网机器当然,在开发过程中,它完全有可能有一个由机
37、同时扮演基于浏览器的客户端和服务器端的角色。由于网络应用程序的性质,相关的网络设备必须有一个特有的协议,以确定怎样发送和接收数据。这个连接计算机的协议就叫做超文本传输协议HTTPHTTP请求/响应的过程当一个客户机启动了WEB浏览器例如OPERA浏览器,火狐浏览器,微软的IE浏览器,一个HTTP的请求就被用来在远程服务器上访问特殊资源通常是一个WEB页面,HTTP是一个基于文本的协议,是基于标准请求/响应模式创建的。举个例子,如果你浏览到HTTP/WWWINTERTECHCOM,浏览器软件利用了一种叫做DNS域名服务的网络技术,它将注册的URL转化成四个部分,32位二进制数,我们把它称为IP地
38、址。这时,浏览器打开了一个套接字连接通常通过非安全性80端口建立连接,然后发送HTTP请求来处理目标站点。服务器端接收了输入的HTTP请求,并选择处理客户端提供的输入信息这些信息可以是文本框,可选择的复选框等以便使HTTP响应格式化。WEB程序员可以利用一些技术CGI,ASP,ASPNET,JSP等来动态的产生相应的内容。这时,客户端浏览器翻译从服务器端发来的HTML,下面的图311说明了基本HTTP请求/响应的过程。图311HTTP请求/响应过程HTTP是一个无状态的协议WEB开发另一个明显区别于传统桌面程序的是HTTP是一个无状态的协议,当WEB服务器对客户端做出响应时,所有早期的联系都结
39、束。这当然不是一个传统的桌面应用程序,它执行的状态一直是变化的,直到用户关闭正在使用的程序。从这一点上来说,作为网络开发者,由你来制定具体的步骤来“存储”那些当前登陆到你网站的用户信息例如购物手推车中的列表项,信用卡号,家庭和工作地址等。你将在第33章节中看到ASPNET提供了许多方法来解决这种情况,其中有许多是WEB平台中常见的SESSION变量,COOKIES,和应用变量,比如一些NET的特殊技术,例如ASPNET中配置管理API。HTTP是一个无状态的协议WEB开发另一个明显区别于传统桌面程序的是HTTP是一个无状态的协议,当WEB服务器对客户端做出响应时,所有早期的联系都结束。这当然不
40、是一个传统的桌面应用程序,它执行的状态一直是变化的,直到用户关闭正在使用的程序。从这一点上来说,作为网络开发者,由你来制定具体的步骤来“存储”那些当前登陆到你网站的用户信息例如购物手推车中的列表项,信用卡号,家庭和工作地址等。你将在第33章节中看到ASPNET提供了许多方法来解决这种情况,其中有许多是WEB平台中常见的SESSION变量,COOKIES,和应用变量,比如一些NET的特殊技术,例如ASPNET中配置管理API。一个WEB的应用程序可以被理解为是一个文件的集合HTM,ASP,ASPX,图像文件,基于XML的文件等以及相关的组件例如NET代码库或者传统的COM服务器,它们存储着给定网
41、络服务器中的详细目录。如第33节所示,ASPNET网络应用程序有特殊的生命周期,并提供了许多事件例如初始化启动或者最终关闭,你可以通过你的网站运行来连接,以达到执行专业的数据处理。网络服务器是一个负责组织网络应用程序的软件产品,它通常提供一些相关服务,例如集成安全,文件传输协议支持FTP,邮件交换服务等。互联网信息服务IIS是微软的企业级网络服务器产品,正如你所想,它为经典ASP以及ASPNET网络应用程序提供内部支持。当你构建一个可用的ASPNET应用程序时,你需要经常与IIS交互。要注意的是,当你安装WINDOWS操作系统时,IIS并不像其他安装选项一样会被自动被选定还要注意并非所有的WI
42、NDOWS版本都支持IIS,比如说WINDOWSXP家庭版。因此,根据你开发环境的配置,你可能希望在开始这一章节之前就安装好了IIS。所以,只要在控制面板中进入添加/删除应用程序,选择添加/删除WINDOWS组件即可。如果你需要更多的细节可以参考WINDOWS的帮助系统。注意理想情况是,在安装VISUALSTUDIO2008之前,你的开发环境上已经安装了IIS。如果你在安装VISUALSTUDIO2008之后安装IIS,你的ASPNET网络应用程序将不能正确执行你将经常得到一个空白网页。幸运的是,你可以重新配置IIS来支持NET应用程序,主要是通过运行ASPNET_REGIISEXE命令行工具
43、以及制定/I选项。如果你的工作环境已正常安装了IIS,你可以在管理工具(在控制面板中)中双击网络信息服务IIS应用程序来使用IIS。本章节的目的是你要关注下面默认的网站节点如图312所示图312IIS小程序IIS虚拟目录的作用一个IIS配置可以支持很多WEB应用程序,这些应用程序都在虚拟目录中。每一个虚拟目录都被映射到硬盘的物理路径中。所以,如果你创建了一个叫做CARSRUS的虚拟目录,外界可以使用像HTTP/WWWCARSRUSCOM这样的URL来定位到这个站点前提是你站点的IP地址在网络上要被注册。然后,这个虚拟目录就映射到了网络服务器的物理根目录下,例如CINETPUBWWWROOTAS
44、PNETCARSSITE,它就包含了CARSRUS网络应用程序的内容。在本章节的后面我们会发现,当你使用VISUALSTUDIO2008来创建一个ASPNETNET网络应用程序时,你可以选择通过IDE来为当前站点自动生成新的虚拟目录。如果需要,你也可以手动创建一个虚拟目录,通过右键单击IIS的默认站点,再选择新的虚拟路径或者在VISTA上直接添加虚拟目录。当你选择了创建新虚拟目录的选项时,会被提示输入名称和包含网页内容的物理文件夹。为了说明IIS的使用也为了建立我们的第一个网页例子,我们在你的硬盘上创建了一个目录,它将储存将要生成的WEB内容。我们假设这个目录是CCODETESTSCARSWE
45、BSITE。现在,右键单击IIS的默认WEB站点来创建新的虚拟目录,名称为CARS且映射到这个新目录。图313显示了最后的结果。图313THECARS的虚拟目录我们将后续添加一些内容到这个站点中。ASPNET开发服务器在早期的NET20中,ASPNET开发者被要求在开发或测试他们网页内容的时候使用IIS虚拟目录。很多情况下,过于依赖IIS使得团队的开发复杂许多更别说许多网络管理员在每台开发者机器上都要安装IIS了,幸运的是,我们现在可以选择使用一个轻便型的叫做WEBDEVWEBSERVEREXE的网络服务器。这个工具允许开发者脱离IIS的束缚来开发ASPNET应用程序。使用时,你可以从主机的的
46、任意目录来构建和测试WEB页面,这对于制定团队开发方案以及在不支持IIS安装的WINDOWS版本中构建ASPNET网页程序非常有用。注意WEBDEVWEBSERVEREXE不能用来测试或者使用传统的基于COM的应用程序。这个网络服务器只能处理ASPNET网络应用程序以及基于NET的XMLWEB服务。当使用VISUALSTUDIO2008来创建站点时,你可以选择使用WEBDEVWEBSERVEREXE来管理网页后续章节将介绍。不过,你也可以通过VISUALSTUDIO2008中的命令提示工具来手动连接。如果你输入下面的命令WEBDEVWEBSERVEREXE将会显示一个文本框,描述了有效地命令行
47、选项。简而言之,你需要指定一个未使用的端口通过端口选项,WEB应用程序的根目录通过路径选项,然后使用虚拟目录选项来指定虚拟目录如果你不支持虚拟路径选项,使用默认的选项。考虑一下下面的用法,如何打开端口来查看以前创建的CCODETESTSCARSWEBSITE目录WEBDEVWEBSERVEREXE/PORT12345/PATH“CCODETESTSCARSWEBSITE“。如果你输入这些命令,你可以启动你所选择的请求页面的WEB浏览器,所以,如果CARSWEBSITE文件夹中有一个文件名为DEFAULTASPX,你可以输入下面的URLHTTP/LOCALHOST12345/CARSWEBSIT
48、E/DEFAULTASPX。这几个章节中的很多例子都是在VISUALSTUDIO2008使用WEBDEVWEBSERVEREXE,而不是通过IIS虚拟目录来管理网页内容,注意这个WEB服务器并不是要管理生产级别的网络应用程序,它的目的主要是为了开发和测试使用。一旦WEB应用程序准备好了,你的网站将需要复制IIS虚拟目录。注意MONO工程参见附录B为APACHE网络服务器提供了一个免费的ASPNET的插件。这就使得其它非WINDOWS以外的其他操作系统也可以创建和管理ASPNET网络应用程序。如果你感兴趣,可以通过HTTP/WWWMONOPROJECTCOM/ASPNET网站来获取细节。HTML
49、的作用现在你已为你的网络应用程序配置了一个目录,并且选择了一个网络服务器作为主机,之后需要创建内容。“网络应用程序”项是组成站点功能的文件,不可否认,大量的此类文件都包含了标记,我们定义它为超文本标记语言HTML。HTML是一种标准标记语言,被用来描述如何将文本,图像,超链接,基于HTML的用户界面等在客户端浏览器中显示。WEB开发方面中的这个特殊情况也是为什么很多程序员不喜欢构建基于WEB方案的主要原因之一。目前很多新的集成开发环境包括VISUALSTUDIO2008,还有网络开发平台例如ASPNET都自动生成了HTML的很多内容,当你在用ASPNET开发时,拥有HTML的知识会方便很多。注意回忆一下第二章中微软发布了一些专门针对家庭产品的免费集成开发环境例如VISUALCEXPRESS,如果你对网络开发感兴趣,你可能会希望下载VISUALWEBDEVELOPEREXPRESS。这个免费的集成开发环境是专门用来构建ASPNET网络应用程序的。本章节没有将HTML的所有细节包含进来,让我们回顾一下基本知识,然后建立一个简单的WEB应用程序,主要使用HTML,传统的基于COMASP和IIS。这将为你从传统的桌面应用程序开发到ASPNET提供一个学习路线。注意如果你已经掌握了WEB页面开发的整个过程,你可以直接跳到章