40
Introduction to ArcGIS API for Microsoft Introduction to ArcGIS API for Microsoft Silverlight Silverlight Nikki Golding Nikki Golding Jo Fraley Jo Fraley ESRI ESRI

Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Embed Size (px)

Citation preview

Page 1: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Introduction to ArcGIS API for Microsoft SilverlightIntroduction to ArcGIS API for Microsoft Silverlight

Nikki GoldingNikki Golding

Jo FraleyJo Fraley

ESRIESRI

Page 2: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

What Is Silverlight?What Is Silverlight?

• Browser plug-in for creating rich interactive web Browser plug-in for creating rich interactive web applications.applications.

• .NET-based API .NET-based API (subset of full .NET framework)(subset of full .NET framework)

• XAML-based UI XAML-based UI (mostly compatible subset of WPF)(mostly compatible subset of WPF)

• Microsoft’s response to Adobe FlexMicrosoft’s response to Adobe Flex• Available on Windows, Mac OS X, and LinuxAvailable on Windows, Mac OS X, and Linux

Page 3: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

History of SilverlightHistory of Silverlight

• Silverlight 1.0 released fall 2007Silverlight 1.0 released fall 2007– No .NET support- only programmable using JavaScriptNo .NET support- only programmable using JavaScript

• Silverlight 2.0 released fall 2008Silverlight 2.0 released fall 2008– Added a .NET runtime implementation called CoreCLR to allow logic Added a .NET runtime implementation called CoreCLR to allow logic

coded in any .NET compatible language using a subset of the .NET coded in any .NET compatible language using a subset of the .NET Framework Base Class LibraryFramework Base Class Library

• Silverlight 3.0 is released summer 2009Silverlight 3.0 is released summer 2009– Added GPU hardware graphics accelerationAdded GPU hardware graphics acceleration, out-of-browser capability , out-of-browser capability

(similar to Adobe AIR), improved data binding, and much more(similar to Adobe AIR), improved data binding, and much more

– Backwards compatible with Silverlight 2.0 applicationsBackwards compatible with Silverlight 2.0 applications

1-1-33

Page 4: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Dictionary of conceptsDictionary of concepts

• WPF: Windows Presentation FoundationWPF: Windows Presentation Foundation– Technology for defining UIs in .NET desktop applications using XAMLTechnology for defining UIs in .NET desktop applications using XAML

• XAML: Extensible Markup LanguageXAML: Extensible Markup Language– XML-based language used by WPFXML-based language used by WPF

• LINQ: Language Integrated QueryLINQ: Language Integrated Query– SQL-like syntax for querying and manipulating many disparate data SQL-like syntax for querying and manipulating many disparate data

sources in .NET: LINQ-to-Objects, LINQ-to-XML, LINQ-to-SQL, etc.sources in .NET: LINQ-to-Objects, LINQ-to-XML, LINQ-to-SQL, etc.

• WCF: Windows Communication FoundationWCF: Windows Communication Foundation– .NET framework for creating web services (SOAP, REST, ..).NET framework for creating web services (SOAP, REST, ..)

• XAP: A ZIP archive containing a Silverlight applicationXAP: A ZIP archive containing a Silverlight application– Includes the application assemblies, XAML, manifest and optionally Includes the application assemblies, XAML, manifest and optionally

supporting resources. Similar to a Java JAR file.supporting resources. Similar to a Java JAR file.

1-1-44

Page 5: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Getting started with SilverlightGetting started with Silverlight

• Visual Studio 2008 SP1Visual Studio 2008 SP1

• Microsoft Silverlight 3 Tools for Visual Studio 2008 SP1Microsoft Silverlight 3 Tools for Visual Studio 2008 SP1

• Optional: Silverlight ToolkitOptional: Silverlight Toolkit

• Optional: Microsoft Expression Blend 3 (recommended!)Optional: Microsoft Expression Blend 3 (recommended!)

1-1-55

Page 6: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Expression Blend and Visual StudioExpression Blend and Visual Studio

Integration designer Developer

.xaml

.sln

Page 7: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

XAML and Expression BlendXAML and Expression Blend

• Basis for all UI in Silverlight is XAML: Extensible Application Basis for all UI in Silverlight is XAML: Extensible Application Markup LanguageMarkup Language

• XAML is an XML-based markup language originally designed for XAML is an XML-based markup language originally designed for WPF (Windows Presentation Foundation)WPF (Windows Presentation Foundation)

• It is the modern equivalent of Windows FormsIt is the modern equivalent of Windows Forms

1-1-77

Page 8: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Demo ?Demo ?

Page 9: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Getting started with the ArcGIS API for Microsoft Getting started with the ArcGIS API for Microsoft Silverlight Silverlight

Page 10: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

ArcGIS API for Microsoft Silverlight/WPFArcGIS API for Microsoft Silverlight/WPF

• Built on Silverlight and WPF PlatformBuilt on Silverlight and WPF Platform– Combine Rich Interactive Applications with ArcGIS Server and Bing Combine Rich Interactive Applications with ArcGIS Server and Bing

Map Enterprise ServicesMap Enterprise Services

– Applications rendered by Microsoft Silverlight plug-inApplications rendered by Microsoft Silverlight plug-in

• Powered by ArcGIS Server REST servicesPowered by ArcGIS Server REST services– Only need URL to access a GIS ServerOnly need URL to access a GIS Server

• Free to useFree to use– No development or deployment license required for non-commercial No development or deployment license required for non-commercial

useuse

– Access the online SDK and download the API library at the ArcGIS API Access the online SDK and download the API library at the ArcGIS API for Microsoft Silverlight/WPF Server Resource Centerfor Microsoft Silverlight/WPF Server Resource Center

Page 11: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Getting Started Getting Started

DownloadDownloadAPI SetupAPI Setup

ReferenceReferenceAssembliesAssemblies

In VisualIn VisualStudioStudio

Open Open Template Template

In ExpressionIn ExpressionBlendBlend

Write CodeWrite CodeRun Run

ApplicationApplication

Modify Modify templatetemplate

Page 12: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Features of the APIFeatures of the API

• TaskTask– FindFind

– IdentifyIdentify

– QueryQuery

– Address LocatorAddress Locator• GeocodeGeocode

– GeoprocessingGeoprocessing

– RoutingRouting

Page 13: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Silverlight ControlsSilverlight Controls

• Silverlight toolkitSilverlight toolkit– Data gridsData grids

• Results of queryResults of query

– ChartsCharts• Visualize attributesVisualize attributes

• ESRI toolkitESRI toolkit– NavigationNavigation

– Map TipsMap Tips

– ToolbarToolbar

– FeatureDataGridFeatureDataGrid

– MapProgressBarMapProgressBar

Page 14: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Design TimeDesign Time

• Starter TemplatesStarter Templates– Drag & Drop Application Creation ExperienceDrag & Drop Application Creation Experience

• Builds on the Expression Interactivity SDKBuilds on the Expression Interactivity SDK– BehaviorsBehaviors

– ActionsActions

– TriggersTriggers

Page 15: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Design-time InteractivityDesign-time Interactivity

• BehaviorsBehaviors– reusable components that can be directly applied to any object on the reusable components that can be directly applied to any object on the

art-boardart-board

– composed of extensible triggers, extensible actions, and behaviorscomposed of extensible triggers, extensible actions, and behaviors

• ESRI delivers over a dozen new BehaviorsESRI delivers over a dozen new Behaviors– Clear Graphics, Maintain/Constrain Extents, Measure, PanTo and Clear Graphics, Maintain/Constrain Extents, Measure, PanTo and

Redlining Actions, Spatial Query Actions and more…Redlining Actions, Spatial Query Actions and more…

Page 17: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI
Page 18: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Building and DebuggingBuilding and Debugging

Page 19: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Compiling Silverlight ApplicationsCompiling Silverlight Applications

• Silverlight code is compiled to a DLL just like a traditional .NET Silverlight code is compiled to a DLL just like a traditional .NET librarylibrary

• You publish a XAP file: contains application DLL, XAML, manifest, You publish a XAP file: contains application DLL, XAML, manifest, and other supporting assembliesand other supporting assemblies

• A XAP file is simply a ZIP archive with a custom extensionA XAP file is simply a ZIP archive with a custom extension

1-1-1919

WebServer

XAPFile

Browser

Page 20: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Deploying a Silverlight ApplicationDeploying a Silverlight Application

• The web server must serve out the XAP file with the correct MIME The web server must serve out the XAP file with the correct MIME typetype

• IIS 7 on Windows Server 2008IIS 7 on Windows Server 2008and Windows Vista SP1 and Windows Vista SP1 includes correct MIME type includes correct MIME type by defaultby default

• Windows Vista with no service packWindows Vista with no service packor other web servers must add the or other web servers must add the mapping manually:mapping manually:

application/x-silverlight-appapplication/x-silverlight-app

1-1-2020

Page 21: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Cross-domain accessCross-domain access

• Requires a clientaccesspolicy.xml fileRequires a clientaccesspolicy.xml file

http://services.arcgisonline.com/clientaccesspolicy.xml

Page 22: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

DebuggingDebugging

Page 23: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

DebuggingDebugging

Page 24: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI
Page 25: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

ESRI Parts for Microsoft® SharePoint™ESRI Parts for Microsoft® SharePoint™

Page 26: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

ESRI Parts for Microsoft® SharePoint™ESRI Parts for Microsoft® SharePoint™Provides Insight By Letting You:Provides Insight By Letting You:

• Integrate and synthesize datasets Integrate and synthesize datasets in a visual wayin a visual way

• Intuitively discover:Intuitively discover:–Complex RelationshipsComplex Relationships–Data PatternsData Patterns–Emerging TrendsEmerging Trends

• Easily Share your insights with Easily Share your insights with others others

Page 27: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Resource Center for SharePoint™Resource Center for SharePoint™Coming Soon!Coming Soon!

• Free for ArcGIS Server and MapIt UsersFree for ArcGIS Server and MapIt Users• Additional Cost for non ESRI usersAdditional Cost for non ESRI users• Available for download – Coming Soon!Available for download – Coming Soon!

• http://resources.esri.com/sharepointhttp://resources.esri.com/sharepoint

Page 28: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

ESRI Parts for ESRI Parts for Microsoft® SharePoint™Microsoft® SharePoint™

• Interactive and Interactive and configurableconfigurable– Map, GeoList, Location Map FieldMap, GeoList, Location Map Field

– Work with Work with • Bing MapsBing Maps• SharePoint List (Excel)SharePoint List (Excel)• Form Libraries (InfoPath)Form Libraries (InfoPath)• SQL Server tablesSQL Server tables

– Configure using a rich, Silverlight design-Configure using a rich, Silverlight design-time experiencetime experience

Page 29: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

ESRI Map Web PartESRI Map Web Part

• Base MapsBase Maps– Bing MapsBing Maps

– ArcGIS OnlineArcGIS Online

– ArcGIS ServerArcGIS Server

• Work with your dataWork with your data– Add Operational LayersAdd Operational Layers

• List Views, SQL TablesList Views, SQL Tables

– Configure layersConfigure layers• Thematic MapsThematic Maps• Points and areaPoints and area

Page 30: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

GeoList Web PartGeoList Web Part

• Interactively work with your lists and the mapInteractively work with your lists and the map• Common tools for viewing your lists and finding nearby itemsCommon tools for viewing your lists and finding nearby items

Page 31: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Location Field TypeLocation Field Type

• Adds the ability to locate your entry in the list to a map during Adds the ability to locate your entry in the list to a map during data capture time.data capture time.

Page 32: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

SharePoint ConfigurationSharePoint Configuration

Page 33: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI
Page 34: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Road ahead 9.4Road ahead 9.4

• MappingMapping– Support for stand-alone tablesSupport for stand-alone tables

– Expose relationships and ability to query relationshipsExpose relationships and ability to query relationships

– Identify and Find operations support layer definitionsIdentify and Find operations support layer definitions

• EditingEditing– Feature ServiceFeature Service

– Geometry ServiceGeometry Service

– Web API: FeatureLayer, Editing Toolbar & Attribute InspectorWeb API: FeatureLayer, Editing Toolbar & Attribute Inspector

– Editing Widget (Editing Widget (configurable out of the box editing solutionconfigurable out of the box editing solution))

– AttachmentsAttachments

Page 35: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Road ahead 9.4Road ahead 9.4

• TimeTime– Time aware layersTime aware layers

– Time slider for easy displayTime slider for easy display

• OtherOther– Support for Well Known Text Spatial ReferencesSupport for Well Known Text Spatial References

– Support for Network Analyst Closest Facility and Service AreaSupport for Network Analyst Closest Facility and Service Area

Page 36: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

TrainingTraining

• Getting Started with ArcGIS API for Microsoft Silverlight/WPF Getting Started with ArcGIS API for Microsoft Silverlight/WPF (Training Seminar – FREE)(Training Seminar – FREE)

Page 37: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI
Page 38: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Open StandardsOpen Standards

Web UsersWeb Users Web GISWeb GISArcGIS ServersArcGIS Servers GIS UsersGIS UsersArcGIS DesktopArcGIS DesktopAuthorsAuthors

MobileMobileDesktopDesktop

Web MapWeb Map

MashupsMashups

Web MapWeb Map

MashupsMashupsExplorerExplorer

GeodatabaseGeodatabase

ArcGIS ServerArcGIS Server ArcGIS OnlineArcGIS Online MapMap MapMap MapMap Web MapWeb Map

Web MapWeb MapBrowserBrowser BrowserBrowser Web BlogWeb Blog Web BlogWeb Blog

DesktopDesktop DesktopDesktop MobileMobile MobileMobile MobileMobile

Raster FilesRaster Files

Page 39: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

Business PartnerBusiness Partner

EducationEducationEducationEducation

Professional ServicesProfessional ServicesProfessional ServicesProfessional Services

Designing & PlanningDesigning & Planning

Situational AwarenessSituational Awareness

Tech SupportTech Support

Tech SupportTech Support

LayersLayers

ModelsModels

Page 40: Introduction to ArcGIS API for Microsoft Silverlight Nikki Golding Jo Fraley ESRI

DatabaseDatabase

FilesFiles DocumentationDocumentation

CD/DVDCD/DVD

Data ApplianceData ApplianceInternetInternet

SatelliteSatelliteSatelliteSatellite

ArcGISArcGIS

ArcGISGISGIS

ArcGISArcGIS

ArcGISGIS