版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
MSDN
開(kāi)發(fā)員最好的和必備的資源站在微軟技術(shù)最前沿!為開(kāi)發(fā)者創(chuàng)建的網(wǎng)絡(luò)提供一年12期的光盤(pán)資料分三個(gè)級(jí)別開(kāi)發(fā)庫(kù)—最新的開(kāi)發(fā)文檔,示例代碼專(zhuān)業(yè)版—開(kāi)發(fā)庫(kù)+全部微軟操作系統(tǒng)+SDK+DDK宇宙版—專(zhuān)業(yè)版+其他所有微軟產(chǎn)品目的:為開(kāi)發(fā)人員提供最先進(jìn)的技術(shù)資料,產(chǎn)品,并提供相互幫助的機(jī)會(huì)
IntroductionTo
ActiveServerPages.NET
張煒
Evangelist
MicrosoftCorporation
weizha@OverviewIntroducingASP.NETCreatingWebFormsWebFormsDataBindingUserControlsUsingWebServicesASPToday(thePros)TheleadingwebappdevelopmentplatformNearly1milliondevelopersusingASPtodaySimpleandapproachablemodelforwebdeveloperstogetstartedNocompilersrequired–“justhitsave”EasytouselanguagesandobjectmodelWellestablisheddevelopersupportbaseGoodbook/consulting/conferencesupportASPToday(theCons)WeaktoolsPoorlayout,debuggers,profilersConfusingsecurityarchitectureDoesn’tworkwellforInternetappsPoordeploymentCOMcomponentsanightmareMetabaseconfigurationoptionsconfusingScalabilitychallengesNowebfarmorcachinginfrastructureIntroducingASP.NETYourexistingASPskillsstillapply,buttherearelotsmorefeaturestoleveragePlatformforcreatingscalableWebapplicationsandservicesImproveddeveloperproductivityModular,factoredarchitectureEasiertodeployEnhancedreliability&availabilityImprovedperformance&scalabilityASP.NETFeaturesMultipleLanguageSupportIncreasedPerformanceCompiledcodeCacheClassesandNamespacesServerControlsWebServicesASP.NETFeatures(continued)ImprovedSecurityGreaterScalabilityCookie-lessSessionsEasyConfigurationandDeploymentASP.NETWebPageDemoPartDeclarative,PartCodeDeclarative"tags"HTML,servercontrolstags,statictextUnlikeASP,goodseparationprovidedbetweencodeandtags<tags>Form1.aspxcode<tags>Form1.aspxcodeForm1.vbsinglefileseparatefiles("code-behind")DynamicallyCompiledASPXFileRequestASPXEngineParseGen’d
Page
Class
GenerateResponseRequestInstantiateResponseCode-
behind
class
PageClassInstantiate,Process&RenderCompile24001200160080040028002000PCMagazineNileApplicationTestPagesServedperSecond8-CPUCompaqProLiant8500ApplicationServer8-CPUCompaqProLiant8500DatabaseServerWebSphere
3.5JSP
RHLinux7.0
Oracle8i3707896038CPU4CPU2CPUMicrosoft
ASP
(VBScript)
SQLSvr2000330748637Microsoft
ASP.NET
(C#)
SQLSvr2000198911542781ASP.NETPagescaninclude…CodeBlocksStaticTextControlTagsHTMLTagsDirectivesDataBinding
ExpressionsRenderblocks<%=…%>Servercomments<%----%>ClientscriptCreatingWebFormsWhatAreWebForms?WhatAreServerControls?TypesofServerControlsHowDoServerControlsWork?ControleventprocessingDemoWhatAreWebForms?.aspxextension@PageDirectiveFrameworkIsanObjectModelDenotedbytherunat="server"AttributeContainClient-sideandServer-sideCodeContainHTMLandServerControls<Formrunat="server"></Form><%@PageLanguage=“c#"%>WhyWebForms?Newcontrol-based,event-drivenexecutionmodelforWebUI"VBfortheWeb"CleanlyencapsulatedfunctionalityMuchlesscoderequiredthanASPExecutedviaCLRasnativecodeVB,C#,JscriptFasterexecutionthanASPWebFormsuse".ASPX"extensionRunsside-by-sidewithASPapplicationsWhatAreServerControls?Server-programmableObjectsDenotedbyTagwiththerunat="server"AttributeEncapsulateBothBehaviorandRenderingFullyDeclarativeRenderDifferentHTMLtoSupportMultipleBrowsersorotherWebClientsTypesofServerControlsHTMLControlsExistwithintheSystem.Web.UI.HtmlControlsnamespaceWebControlsExistwithinthe
System.Web.UI.WebControlsnamespace<inputtype="text"id="txtName"runat="server"><spanid="spnStarter"runat="server">starter</span><asp:TextBoxid="txtName"runat="server"Text="[EntryKeywords]"/>HtmlControl
DemoWhatAreWebControls?WebControlsIntrinsiccontrols
asp:list,asp:button,asp:checkbox,asp:tableInputValidationcontrols
asp:RangeValidator,asp:RegularExpressionValidatorRichcontrols
asp:calendar,asp:adrotatorList-boundcontrols
asp:datagrid,asp:repeater,asp:datalistHowDoServerControlsWork?Declaredwithrunat="server"AttributeWhentheASP.NETPageisExecuted:CreatesactionandmethodattributesofformAddsuniqueidandnameattributestocontrolsAddsvalueattributetocontrolsAddsahiddencontroltotheformtosaveviewstateinformation<inputtype="text"id="text2"runat="server"><html><scriptlanguage=“C#“runat=server>voidSubmitBtn_Click(Objectsender,EventArgsE){ Message.Text=“Hi“+Name.Text;}</script><body><formrunat=server><h3>Name:<asp:textboxid=“Name“runat=server/> <asp:buttontype=submittext=“LookUp“ OnClick=“SubmitBtn_Click“runat=server/><p> <asp:labelid=“Message“runat=server/></form></body></html>OtherMicrosoftControlsMobileControlsRendersWebUItoMobiledevicesincludingWAPphones,MsftMobileExplorerphones,CEdevices,etc.Download:/downloads/default.asp?URL=/code/sample.asp?url=/msdn-files/027/001/516/msdncompositedoc.xmlInternetExplorerControlsTakeadvantageofIE5.5DHTMLBehaviorsforricherclientexperienceTabStrip,TreeViewandToolbarMoreinfo:/downloads/samples/Internet/ASP_DOT_NET_ServerControls/WebControls/sample.aspInternetExplorerControlDemoControleventprocessingEventsare:TriggeredontheclientHandledinservercodeRequiresapostbacktothesamepageViewStatehelpsrestorecontroltoit’spreviousstateImplementedasahiddenformfieldDisablevia:EnableViewState=falseTip:DataBindingresetscontrolstateHandlingControlEventsWireupthehandleronthetag:
<asp:buttonid=btn1onclick="btn1_Click" runat=server>Or,incode(VS.NETdoesthisautomatically)btn1.Click+=newEventHandler(btn1_click);Eventhandlercode:
publicvoidbtn1_Click(senderObject,eEventArgs){ Message.Text="Button1clicked" }Page/ControlEventExecutionPage_LoadPage_UnloadTextbox1_ChangedButton1_ClickControlEvents1.ChangeEvents2.ActionEventsPageisloaded,controlhierarchyinitializedPageisdisposedControlhierarchyisrenderedPage_LoadDetailsPage_LoadfiresoneveryrequestUsePage.IsPostBacktoexecuteconditionallogicExample:PublicvoidPage_Load(senderObject,eEventArgs)If(!Page.IsPostBack)
{‘executesonlyoninitialpageloadMessage.Text="initialvalue“}ThePageControlTreeThePageclasscreatesahierarchicaltreeofcontrolsPageistherootofthetreeStatictextisrepresentedbytheLiteralControlclassinthehierarchyThepageisrenderedbycallingRender()oneachcontrolinthetreeSowhat?ProgrammaticallyaddcontrolsPredictseventandrenderingorderExample
ASP.NETsource<%@Pagelanguage="C#"%><html><body>
<formrunat=server>Enter:
<asp:TextBoxrunat=server>YourName
</asp:TextBox></form></body></html>Example(cont’d)
Resultingcontroltree__PAGE System.Web.UI.Pagectrl0System.Web.UI.LiteralControlctrl1System.Web.UI.HtmlControls.HtmlFormctrl3System.Web.UI.LiteralControlctrl4System.Web.UI.WebControls.TextBoxctrl5System.Web.UI.LiteralControlctrl2System.Web.UI.LiteralControlManipulatingtheControlTreeInsertcontrolsintotheControlscollectionofit’sparentCookupaninstanceofacontrol
Buttonbtn1=newButton()
btn1.Text="ClickMe"
Insertintothecontrolhierarchy:
myPanel.Controls.Add(btn1)WebFormsDataBindingWebFormsDataBindingProvidesasimple,declarativewaytobindWebUIelementstodataSupportsbindingtoanydatasourceDataSets,DataTables,DataReadersCollections(Arrays,Hashtable,etc.)XMLBut…OnewaysnapshotmodelRequirescodetoupdatethedatasourceDataBindingSyntaxFirststep:declarethebindingsDeclaratively(inHTML):
<%#custID%>Imperatively(incode):
DropDownList1.DataSource=myArrayList;
Secondstep:CallDataBind
SubPage_Load(sAsObject,eAsEventArgs)
DropDownList1.DataBind()
EndSub
SupportedDataSourcesADO.NETConnected:DataReaderADO.NETDisconnected:DataSet,DataTable,DataViewAlsootherIEnumerabletypes:Arraylist,ArrayHastableResultofamethodDataBindinginTemplatesTemplatesenable“Lookless”UICustomizestructure–notjuststyleControlscanbeusedwithintemplatesNotlimitedtolistsordatabindingControlsmayexposeanynumberofthemDataBinder.Evalhelperforlate-bindingEveninC#!
<%#DataBinder.Eval(Container.DataItem,"Price","{0:c}")%>ContainerContainer:aliasfortheitemcreatedfromthetemplate+data.Item
thecontainingcontrol.DataItemthisrowofdata.ItemIndex
indexinItemscollectionExamples:<%#Container.ItemIndex%><%#Container.DataItem("Name")%><%#Container.DataItem("Price")%>DataBinding
DemoUserControlsUserControlsServercontrols,authoredlikepagesEnablesfullencapsulationSupportsnestedcontrolsSeparatecodenamespaceSeparatecodelanguageGreatwaytopartitionworkGreatwaytoreuseworkacrossmultiplepagesandapplicationsExposingAnObjectModelUsercontrolsexposeanobjectmodelProperties,Fields,Events,MethodsExample:<scriptlanguage=“c#"runat="server">publicstringColor="blue"</script><fontcolor=<%=Color%>> Thisisasimplemessageusercontrol</font><%@Register%>DirectiveRegistersUserControlforuseonaWebFormspage:
<%@Register
TagPrefix="Acme"
TagName="Message"
Src="mycontrol1.ascx"
%>
<Acme:MessageText="Hello"runat="server"/>WhatisaWebService?MostcommonmetaphorforaccessinginformationisthroughawebbrowserWebbrowserisnotenough…AwebserviceisprogrammableapplicationlogicaccessibleviastandardWebprotocolsProgrammable…Availabletoavarietyofclients(platformindependent)Standardpro
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度木結(jié)構(gòu)建筑維護(hù)木工承包合同范本3篇
- 二零二五年度婚慶服務(wù)市場(chǎng)前景分析婚慶協(xié)議合同3篇
- 二零二五年度木材采購(gòu)與木材行業(yè)技術(shù)培訓(xùn)合同3篇
- 2025年度個(gè)人二手房交易資金監(jiān)管合同范本4篇
- 二零二五年度智能停車(chē)場(chǎng)車(chē)牌租賃與安全管理合同4篇
- 2025版民間借貸合同要點(diǎn)識(shí)別并規(guī)避四種借款人風(fēng)險(xiǎn)4篇
- 二零二五年度棉布面料環(huán)保認(rèn)證與檢測(cè)服務(wù)合同4篇
- 二零二五年度民爆物品儲(chǔ)存安全責(zé)任合同4篇
- 2025年度汽車(chē)文化體驗(yàn)館租賃合同4篇
- 2025年物業(yè)管理公司委托管理合同范本3篇
- 遼寧省撫順五十中學(xué)2024屆中考化學(xué)全真模擬試卷含解析
- 2024年湖南汽車(chē)工程職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)及答案解析
- 2024年中國(guó)科學(xué)技術(shù)大學(xué)少年創(chuàng)新班數(shù)學(xué)試題真題(答案詳解)
- 家長(zhǎng)心理健康教育知識(shí)講座
- GB/T 292-2023滾動(dòng)軸承角接觸球軸承外形尺寸
- 軍人結(jié)婚函調(diào)報(bào)告表
- 民用無(wú)人駕駛航空器實(shí)名制登記管理規(guī)定
- 北京地鐵6號(hào)線(xiàn)
- 航空油料計(jì)量統(tǒng)計(jì)員(初級(jí))理論考試復(fù)習(xí)題庫(kù)大全-上(單選題匯總)
- 諒解書(shū)(標(biāo)準(zhǔn)樣本)
評(píng)論
0/150
提交評(píng)論