Post on 22-Jan-2017
Web services support across the Microsoft platform Web services support across the Microsoft platform
Tool
sTo
ols
ClientsClients
ServicesServices
ServersServers
Experiences Experiences &
Solutions&
Solutions
Windows API
.NET Framework
Consistent API availability regardless oflanguage and programming model
ASP
Stateless,code embeddedin HTML pages
MFC/ATL
Subclassing,Power and
Expressiveness
VB Object Model
RAD,Composition and
Delegation
Windows Operating SystemWindows Operating System
Common Language RuntimeCommon Language Runtime
Base Class LibraryBase Class Library
ADO .NET and XMLADO .NET and XML
ASP .NETASP .NETWeb Forms Web ServicesWeb Forms Web Services
Mobile Internet ToolkitMobile Internet Toolkit
WindowsWindowsFormsForms
Common Language SpecificationCommon Language Specification
VBVB C++C++ C#C# J#J# ……Visual Studio .N
ETVisual Studio .N
ET
Manages running code◦ Threading, Memory management◦ Eliminates memory management drudgery◦ Kills entire classes of bugs (e.g., memory corruption,
ref counting)◦ Auto-versioning, no more DLL Hell◦ Scalability, performance, reliability all improve
Fine-grained evidence-based security◦ Code access + Role-based◦ Integrated with underlying OS◦ Security model ensures safety
No-touch deployment◦ XCOPY, no registry required
Object remoting with SOAP
Class Loader
IL to NativeCompilers
CodeManager
GarbageCollector
Security Engine Debug Engine
Type Checker Exception Manager
Thread Support COM Marshaler
Base Class Library Support
Spans all programming languages◦ Enables cross language inheritance and
debugging◦ Integrates well with tools
Object-oriented and consistent◦ Increases developer productivity by reducing
the number of APIs to learn Common type system built-in Extensible
◦ Makes it easy to add or modify framework features
Secure◦ Allows creation of secure applications
System & Runtime Functions Windows & Web Development Web Services Data Access & XML Services Networking & IO Enterprise Services (COM+ & MSMQ) Directory & Security Services Diagnostics, Perf-Mon, Debug And many more…
System
System.Data (ADO .NET) System.XML
System.Web (ASP .NET)
GlobalizationDiagnosticsConfigurationCollections
ResourcesReflectionNetIO
ThreadingTextServiceProcessSecurity
DesignADO
SQLTypesSQL
XPathXSLT
RuntimeInteropServicesRemotingSerialization
Serialization
Configuration SessionStateCaching Security
ServicesDescriptionDiscoveryProtocols
UIHTMLControlsWebControls
System.Drawing
ImagingDrawing2D
TextPrinting
System.WinFormsDesign ComponentModel
11
Source Code
C++, C#, VB or C++, C#, VB or any .NET any .NET languagelanguage
csc.exe or vbc.execsc.exe or vbc.exeCompilerCompiler
Assembly
DLL or EXEDLL or EXE
VBVBSource Source codecode
CompilerCompiler
C++C++C#C#
CompilerCompilerCompilerCompiler
Operating System ServicesOperating System Services
Common Language RuntimeCommon Language Runtime
JIT CompilerJIT Compiler
Native CodeNative Code
ManagedManagedcodecode
AssemblyAssemblyIL CodeIL Code
AssemblyAssemblyIL CodeIL Code
AssemblyAssemblyIL CodeIL Code
Role-based Security◦ What the user is allowed to do within the
application◦ .NET Roles = Windows Active Directory® groups
Code Access Security◦ What the code is allowed to do on this machine◦ Evidence Based (Policies, Permissions, Evidence)
Cryptography Built In to .NET FX
Evolution, not revolution, of language used by developers worldwide
Builds on existing technology while adding power◦ True OOP◦ Multithreading◦ NT Services◦ Web Services
The fastest way to build scalable applications for industry
C# is the first “component oriented” language in the C/C++ family
Component concepts are first class:◦ Properties, methods, events◦ Design-time and run-time attributes◦ Integrated documentation using XML
Enables one-stop programming◦ No header files, IDL, etc.◦C++ heritage – simplification with no unnecessary sacrifices
Native support for XML Web services Fully integrated with Visual Studio .NET
development environment Full access to the .NET Framework
◦ ASP.NET, ADO.NET, Windows Forms◦ Integration with >20 other languages
Protection of existing investments◦ Use java language syntax on .NET◦ Move applications and skills forward
Better ANSI/ISO conformance Enable seamless, incremental use
of .NET Framework Enhanced ATL Servers Improved ATL and MFC Clients Enhanced STL
Web Form – Next Generation ASP Page Win Form – Next Generation Win32 App Web Services – Key to Interoperability Others –
◦ Server Objects ◦ Console Applications◦ Window Services◦ Mobile Clients ◦ Many more…
Server-side Web Forms and Web Services components separate code from content◦ Developer productivity increases◦ Tools easily use ASP.NET◦ Any programming language: full VB, JScript,
C++, COBOL, Perl, etc.◦ 40% to 70% reduction in lines of code
Compiled No-touch deployment system Intelligent state management Backwards compatible with ASP Controls sense client and adapt output:
HTML, DHTML, WML
A Component That Uses XML & HTTP To Define and Deliver A Service◦ Global reach◦ Based on open set of standards◦ Reuse across platforms◦ Works with any operating system, programming
language, or network◦ Expose legacy code
Different systems can actually talk
XML◦ Universal data format◦ Standards-based integration◦ User-customizable
HTTP◦ Ubiquitous protocol◦ Universally understood
Expose functionality as service◦ No need to learn XML, SOAP, or WSDL◦ Interface is automatically generated◦ Seamless deployment
Reuse existing Web Services◦ VS.NET generates the plumbing◦ Full IntelliSense support
Build and consume with any VS language
Built-in Support for Developing and Consuming Web Services◦ Based entirely on open standards◦ Automatically generates WSDL◦ Automatically provides test page◦ Attribute based – No heavy coding needed
Public Function HelloWorld() as String
return “Hello World”
End Function
[WebMethod] WSDL
WebServiceObject
TestPage
Compiler
Rich, powerful client UI◦ Control anchoring, visual inheritance◦ Shared across all .NET languages◦ No-touch deployment
Secure◦ Semi-trusted browser component◦ Fully-trusted local application
Full Web Service integration
Evolutionary◦ Existing Skills Migrate Smoothly◦ Interoperates with Existing Applications◦ Extension of WinDNA Architecture
Revolutionary◦ Common Language Runtime◦ Deployment / Versioning (Ends DLL Hell)◦ Web Services & XML Integration◦ Evidence Base Code Access Security
Developers can use any .NET Language The .NET Framework provides a foundation of
classes for developers to build a wide variety of applications
Source code is compiled to MSIL within an Assembly
Assembles contain rich meta data and are the primary units of deployment
MSIL is compiled to native code and executed by the Common Language Runtime