..NETNETArcGISArcGISServerWebServerWebESRI•ArcGISServerApplicationDeveloperFrameworkfor.NET¾Templates¾Controls••WebControlsWeb•ArcGISArcGISServerTemplatesServerTemplates•Templates¾¾DeveloperKit•C#VB.NETArcGISArcGISServerTemplatesServerTemplatesArcGISArcGISServerTemplate:MapServerTemplate:Map•Map,Toc,OverviewMapControls¾MapNavigation¾Forward/BackExtenthistory¾Identify¾TableofContents¾OverviewMapArcGISArcGISServerTemplate:ServerTemplate:PageLayoutPageLayout•¾PageNavigation¾DataFramenavigation¾TableofContentszShowsmultipleDataFramesthatappearinthelayoutArcGISArcGISServerTemplates:ServerTemplates:SearchSearch•¾Google-style¾Demonstratespagingoftheresults¾Displayingdetailsofaselecteditem¾GeographicviewoftheitemsArcGISArcGISServerTemplate:ServerTemplate:GeocodeGeocode•MapServerGeocodeServer¾SimilartotheSearch¾Displayscandidates¾MapsresultsArcGISArcGISServerTemplate:ServerTemplate:ThematicMapThematicMap•¾BasedonMapViewerArcGISArcGISServerTemplate:ServerTemplate:WebCatalogWebCatalog•webservices•ArcGISDesktopArcObjectsArcGISServerApplicationDeveloperFrameworkArcGISArcGISServerApplicationServerApplicationDeveloperFrameworkDeveloperFramework•¾DeveloperProductivity¾Flexibility¾End-UserExperience•.NETArcGISArcGISServerApplicationServerApplicationDeveloperFrameworkDeveloperFramework•ArcGISWebApplications¾TemplateszC#andVB.NETversions¾WebServerControlszPageLayout,Map,TOC,OverviewMap¾ClassLibraryzArcGISEngineusingtheArcGISServerProgrammingPatterns??•GISWeb••ArcObjects•ArcGISServer••Developmentprocess•ASP.NET•WebServerControls•TheEventModel•PageProcessingStepsUnderstandingtheUnderstandingtheDevelopmentProcessDevelopmentProcess•WebControlsexpose:¾Properties:namedattributesofanobject.¾Events:actionsrecognizedbyanobject.¾Methods:proceduresassociatedwithanobject.ASP.NETASP.NET•.NET•.NET•ASP.NET.NET•WYSIWYGHTMLMicrosoftVisualStudio.NETUnderstandingASP.NETUnderstandingASP.NET•ASP.NET¾WebFormsorXMLWebservices¾Combinetheseinanywaytheyseefit.•Eachissupportedbythesameinfrastructure¾Allowsyoutouseauthenticationschemes,cachefrequentlyuseddata,orcustomizeyourapplication'sconfiguration,tonameonlyafewpossibilities.WebFormsWebForms•servercontrols•web•HTTPrequest¾HTTPServerControlsServerControls•••Expose:¾Properties:namedattributesofanobject.¾Events:actionsrecognizedbyanobject.¾Methods:proceduresassociatedwithanobject.AdvantagesofServerAdvantagesofServerControlsControls•RAD•Plug-ins¾HTML/JavaScriptTypesofServerControlsTypesofServerControls•Usercontrols¾ASP.NETallowsyoutosaveyourpageasausercontrolwithoutwritingasingleadditionallineofcode•CompositeControls¾Combinethefunctionalityoftwoormoreexistingcontrols•DerivedControls¾Customizeanexistingcontrolbyderivingfromitandoverridingitsproperties,methods,orevents•CustomControls¾BuildonefromscratchusingtheprovidedbaseclassesTheEventModelTheEventModel••windows¾windows¾WebFormsHowEventsWorkHowEventsWork••HTTPpost•.NETpageframework¾Interpretstheposttodeterminewhateventoccurred¾CallstheappropriatemethodontheserverAdvantagesoftheEventAdvantagesoftheEventModelModel•ASP.NEThandlesthemechanicsofevents:¾Capturing¾Transmitting¾InterpretingPageProcessingStepsinPageProcessingStepsinASP.NETASP.NET•¾ASP,ASP.NET,JSP,ColdFusion,etc.•serverclientPageProcessingStepsinPageProcessingStepsinASP.NETASP.NET•Client:¾Presentinginformation¾Capturinginformationfromtheuser¾Optionallyexecutingclientsidescript•Server:¾Dynamicallycreatingthepageanddeliveringthepagetotheclient¾Optionally,managingclient-sidestatePageProcessingStepsinPageProcessingStepsinASP.NETASP.NET•¾clientclient¾serverserver¾ClientserverPageProcessingStepsinPageProcessingStepsinASP.NET:ServerControlsASP.NET:ServerControls•Wheninteractingwiththeservercontrols¾ExecutionandinformationispassedfromtheclientbacktotheserverviaanHTTPRequest.•Ruleofthumb:¾Iftheserverdoesnotneedtoprocessinformation,keeptheworkontheclientPageProcessingStepsinPageProcessingStepsinASP.NET:ServerControlsASP.NET:ServerControls•WiththeWebFormsmodel,Microsofthasintroducedanewconcept-ServerControls.¾Behavesliketheclient-sidecontrolsthathavebeenusedwithVisualBasic6¾However,executionhappensontheserver¾ClienthasnoaccesstothesecontrolsprogrammaticallyArcGISArcGISServerWebControlsServerWebControls•Self-containedserver-sideUIcomponents¾Map¾PageLayout¾OverviewMap¾TableofContents(TOC)•ExposesfunctionalityofArcGISServerArcGISArcGISServerWebControlsServerWebControlsArcGISServerWebControlsinToolboxMapControlPropertysheetMapControlinDesigntimeOverviewMapControlinDesigntimeTocControlinDesigntimeMapWebControlMapWebControl•Displaysamap•Includestoolsformapnavigation•JavaScriptforclient-sideinteraction•YoucanmakeyourowntoolsandplugtheminHTMLgeneratedonWebHTMLgeneratedonWebFormbyMapFormbyMapesri:Mapid=“Map1”style=“Z-INDEX:101;LEFT:233px;POSITION:absolute;TOP:113px”runat=“server”Host=localhostDataFrame=“Layers”ServerObject=“world”BorderStyle=“Solid”BorderWidth=“16px”Width=“534px”Height=“410px”BorderColor=“LightSteelBlue”DragBoxColor=“DarkGray”esri:MapToolItemServerToolActionAssembly=“MyMap”Key=“ZoomIn”ClientToolAc