1.NET Framework Overview: A Road Map Brad Abrams.NET Framework Team Microsoft Corporation...
-
Upload
blanche-shepherd -
Category
Documents
-
view
221 -
download
3
Transcript of 1.NET Framework Overview: A Road Map Brad Abrams.NET Framework Team Microsoft Corporation...
1
.NET Framework Overview: A Road MapBrad Abrams.NET Framework TeamMicrosoft [email protected]
ARC 200
Jeffrey RichterCo-founderWintellect
2
Tools
Client Application Model
Avalon Windows Forms
Web & Service Application Model
ASP.NET / Indigo Win FSCompact
FrameworkYukon Mobile PC Optimized
System.HelpSystem.Help
System.DrawingSystem.Drawing
System.NaturalLanguageServicesSystem.NaturalLanguageServices
Data Systems Application Model
Presentation Data
Mobile PC & Devices Application Model
Communication
Command Line
NT Service
DataSetDataSet
MappingMapping
ObjectSpacesObjectSpaces
ObjectSpaceObjectSpace
QueryQuery
SchemaSchema
ItemItem
RelationshipRelationship
MediaMedia
AudioAudio
VideoVideo
ImagesImages
System.MessagingSystem.Messaging System.DiscoverySystem.Discovery
System.DirectoryServicesSystem.DirectoryServices
System.RemotingSystem.Remoting
System.Runtime.RemotingSystem.Runtime.Remoting
ActiveDirectoryActiveDirectory
UddiUddi
System.Web.ServicesSystem.Web.Services
Web.ServiceWeb.Service
DescriptionDescription
DiscoveryDiscovery
ProtocolsProtocols
System.MessageBusSystem.MessageBus
TransportTransport
PortPort
ChannelChannel
ServiceService
QueueQueue
PubSubPubSub
RouterRouter
System.TimersSystem.Timers
System.GlobalizationSystem.Globalization
System.SerializationSystem.Serialization
System.ThreadingSystem.Threading
System.TextSystem.Text
System.DesignSystem.Design
Base & Application Services
Fundamentals
System.ComponentModelSystem.ComponentModel
System.CodeDomSystem.CodeDom
System.ReflectionSystem.Reflection
System.EnterpriseServicesSystem.EnterpriseServices
System.TransactionsSystem.Transactions
Security
System.Windows.TrustManagementSystem.Windows.TrustManagement
System.Web.SecuritySystem.Web.Security
System.MessageBus.SecuritySystem.MessageBus.Security
AuthorizationAuthorization
AccessControlAccessControl
CredentialsCredentials
CryptographyCryptography
System.Web.ConfigurationSystem.Web.Configuration
System.MessageBus.ConfigurationSystem.MessageBus.Configuration
System.ConfigurationSystem.Configuration
System.ResourcesSystem.ResourcesSystem.ManagementSystem.Management
System.DeploymentSystem.Deployment
System.DiagnosticsSystem.Diagnostics
Configuration Deployment/Management
System.WindowsSystem.Windows System.WindowsSystem.WindowsSystem.Windows.FormsSystem.Windows.Forms
System.ConsoleSystem.Console
System.ServiceProcessSystem.ServiceProcess
System.Windows.FormsSystem.Windows.Forms System.WebSystem.Web System.StorageSystem.Storage System.Data.SqlServ
erSystem.Data.SqlServer
AnimationAnimation
ControlsControls
ControlControl
DesignDesign
PanelPanel
ControlsControls
DialogsDialogs
SideBarSideBar
NotificationNotification
System.WindowsSystem.Windows
DocumentsDocuments
Text ElementText Element
ShapesShapes
ShapeShape
InkInk
UI ElementUI Element ExplorerExplorer MediaMedia
System.Windows.FormsSystem.Windows.Forms
FormsForms
ControlControl
Print DialogPrint Dialog
DesignDesign
System.Web.UISystem.Web.UI
PagePage
ControlControl
HtmlControlsHtmlControls
MobileControlsMobileControls
WebControlsWebControls
AdaptorsAdaptors
DesignDesign
PortsPorts
InteropServicesInteropServices
System.RuntimeSystem.Runtime
System.IOSystem.IO
System.CollectionsSystem.Collections
GenericGeneric
System.SearchSystem.Search
AnnotationsAnnotations
MonitoringMonitoring
LoggingLogging
RelevanceRelevance
System.DataSystem.Data
SqlClientSqlClient
SqlTypesSqlTypes
SqlXMLSqlXML
OdbcClientOdbcClient
OleDbClientOleDbClient
OracleClientOracleClient
CoreCore
ContactContact
LocationLocation
MessageMessage
DocumentDocument
EventEvent
System.StorageSystem.Storage
System.WebSystem.Web
PersonalizationPersonalization
CachingCaching
SessionStateSessionState
System.XmlSystem.Xml
SchemaSchema
SerializationSerialization
XpathXpath
QueryQuery
PermissionsPermissions
PolicyPolicy
PrincipalPrincipal
TokenToken
System.SecuritySystem.Security
System.CollaborationSystem.Collaboration
RealTimeEndpointRealTimeEndpoint
TransientDataSessionTransientDataSession
SignalingSessionSignalingSession
MediaMedia
ActivitiesActivities
HttpWebRequestHttpWebRequest
FtpWebListenerFtpWebListener
SslClientStreamSslClientStream
WebClientWebClient
System.NetSystem.Net
NetworkInformationNetworkInformation
SocketsSockets
CacheCache
System.WebSystem.Web
AdministrationAdministration
ManagementManagement
NavigationNavigation
Peer GroupPeer Group
PolicyPolicy
SerializationSerialization
CompilerServicesCompilerServices
RecognitionRecognition
System.SpeechSystem.Speech
SynthesisSynthesis
3
AgendaAgenda
The .NET Framework TodayInnovations in Whidbey
In the BaseOn the Data Tier
YukonData Access APIs
On the Web TierASP.NETWeb Services
On the Client TierOn Devices
Path to the Future
The .NET Framework TodayInnovations in Whidbey
In the BaseOn the Data Tier
YukonData Access APIs
On the Web TierASP.NETWeb Services
On the Client TierOn Devices
Path to the Future
4
The .NET FrameworkA Once in a Decade ChangeThe .NET FrameworkA Once in a Decade Change
PDC 2000 Paradigm ShiftWeb servicesManaged Code
PDC 2000 Paradigm ShiftWeb servicesManaged Code
19801980 19901990 20002000
Ric
hn
ess
Ric
hn
ess
Win16Win16 Win32Win32COMCOM
MFCMFCComponents
ComponentsServicesServices
APIsAPIs
Windows3.0
5
Landmarks To DateLandmarks To Date
Running in over 60% of Fortune 100More than 70M systems with .NET FrameworkStrong developer ecosystemISO standardization
Running in over 60% of Fortune 100More than 70M systems with .NET FrameworkStrong developer ecosystemISO standardization
0%
50%
100%
150%
200%
250%
300%
350%
Q202 to Q302 Q302 to Q402 Q402 to Q103 Q103 to Q203
Growth of ASP.NET (Netcraft)
6
Tools
Client Application Model
Windows Forms
Web & Service Application Model
ASP.NET Compact Framewo
rk
Yukon
Data Systems Application Model
Presentation
Mobile PC & Devices Application Model
Communication
Command Line
NT Service
System.MessagingSystem.MessagingSystem.DirectoryServicesSystem.DirectoryServicesSystem.Runtime.RemotingSystem.Runtime.Remoting
System.Windows.FormsSystem.Windows.Forms
System.ConsoleSystem.Console
System.ServiceProcessSystem.ServiceProcess
System.Windows.FormsSystem.Windows.Forms System.WebSystem.Web System.Data.SqlSe
rverSystem.Data.SqlServer
HttpWebRequestHttpWebRequestFtpWebListenerFtpWebListener
SslClientStreamSslClientStream
WebClientWebClient
System.NetSystem.Net
NetworkInformationNetworkInformation
SocketsSockets
CacheCache
System.Windows.FormsSystem.Windows.Forms
FormsForms
ControlControl
Print DialogPrint Dialog
DesignDesign
System.Web.UISystem.Web.UI
PagePage
ControlControl
HtmlControlsHtmlControls
MobileControlsMobileControls
WebControlsWebControls
AdaptorsAdaptors
DesignDesign
System.DrawingSystem.Drawing
System.Web.ServicesSystem.Web.Services
Web.ServiceWeb.Service
DescriptionDescription
DiscoveryDiscovery
ProtocolsProtocols
System.TimersSystem.Timers
System.GlobalizationSystem.Globalization
System.SerializationSystem.Serialization
System.ThreadingSystem.Threading
System.TextSystem.Text
System.DesignSystem.Design
SerializationSerialization
CompilerServicesCompilerServices
Base & Application Services
Fundamentals
System.ComponentModelSystem.ComponentModel
System.CodeDomSystem.CodeDom
System.ReflectionSystem.Reflection
System.EnterpriseServicesSystem.EnterpriseServices
System.TransactionsSystem.Transactions
Security
System.Web.SecuritySystem.Web.Security
AccessControlAccessControl
CredentialsCredentials
CryptographyCryptography
System.Web.ConfigurationSystem.Web.Configuration
System.ConfigurationSystem.Configuration
System.ResourcesSystem.Resources
System.ManagementSystem.Management
System.DeploymentSystem.Deployment
System.DiagnosticsSystem.Diagnostics
Configuration Deployment/Management
PortsPorts
InteropServicesInteropServices
System.RuntimeSystem.Runtime
System.IOSystem.IO
System.CollectionsSystem.Collections
GenericGeneric
PermissionsPermissions
PolicyPolicy
PrincipalPrincipal
TokenToken
System.SecuritySystem.Security System.WebSystem.Web
AdministrationAdministration
ManagementManagement
.NET Framework “Whidbey”
Data
System.WebSystem.Web
PersonalizationPersonalization
CachingCaching
SessionStateSessionState
System.XmlSystem.Xml
SchemaSchema
SerializationSerialization
XpathXpath
QueryQuery
DataSetDataSet
MappingMapping
ObjectSpacesObjectSpaces
ObjectSpaceObjectSpace
QueryQuery
SchemaSchema
System.DataSystem.Data
SqlClientSqlClient
SqlTypesSqlTypes
SqlXMLSqlXML
OdbcClientOdbcClient
OleDbClientOleDbClient
OracleClientOracleClient
7
Trustworthy CommitmentTrustworthy Commitment
Microsoft Cultural ShiftThousands of hours spent in security reviews on .NET Framework to dateFoundstone, @Stake security reviews
“Hardening” the .NET FrameworkMaking Security Easier for Customers
Prescriptive Architectural GuidanceFeature changes in .NET Framework
Microsoft Cultural ShiftThousands of hours spent in security reviews on .NET Framework to dateFoundstone, @Stake security reviews
“Hardening” the .NET FrameworkMaking Security Easier for Customers
Prescriptive Architectural GuidanceFeature changes in .NET Framework
SECSYM: Security SymposiumARC340: CLR Under the Covers: .Net Framework Application Security
8
Base InnovationsBase Innovations
64-bit Support
Performance
Edit and Continue
Base Library Enhancements
Generics
64-bit Support
Performance
Edit and Continue
Base Library Enhancements
GenericsARC280: .NET Framework: Exploring What's New in the Base Class Library for "Whidbey“ARC413: CLR Under the Covers: "Whidbey" CLR InternalsARCL01: CLR: Tips and Tricks for Faster Managed Code: How To and What's New
42
Tools
Client Application Model
Windows Forms
Web & Service Application Model
ASP.NET Compact
FrameworkYukon
Data Systems Application Model
Presentation
Mobile PC & Devices Application Model
Communication
Command Line
NTService
System.MessagingSystem.Messaging
System.DirectoryServicesSystem.DirectoryServices
System.Runtime.RemotingSystem.Runtime.Remoting
System.Windows.FormsSystem.Windows.Forms
System.ConsoleSystem.Console
System.ServiceProcessSystem.ServiceProcess
System.Windows.FormsSystem.Windows.Forms System.WebSystem.Web System.Data.SqlServerSystem.Data.SqlServer
HttpWebRequestHttpWebRequest
FtpWebListenerFtpWebListener
SslClientStreamSslClientStream
WebClientWebClient
System.NetSystem.Net
NetworkInformationNetworkInformation
SocketsSockets
CacheCache
System.Windows.FormsSystem.Windows.Forms
FormsForms
ControlControl
Print DialogPrint Dialog
DesignDesign
System.Web.UISystem.Web.UI
PagePage
ControlControl
HtmlControlsHtmlControls
MobileControlsMobileControls
WebControlsWebControls
AdaptorsAdaptors
DesignDesign
System.DrawingSystem.Drawing
System.Web.ServicesSystem.Web.Services
Web.ServiceWeb.Service
DescriptionDescription
DiscoveryDiscovery
ProtocolsProtocols
System.TimersSystem.Timers
System.GlobalizationSystem.Globalization
System.SerializationSystem.Serialization
System.ThreadingSystem.Threading
System.TextSystem.Text
System.DesignSystem.Design
SerializationSerialization
CompilerServicesCompilerServices
Base & Application Services
Fundamentals
System.ComponentModelSystem.ComponentModel
System.CodeDomSystem.CodeDom
System.ReflectionSystem.Reflection
System.EnterpriseServicesSystem.EnterpriseServices
System.TransactionsSystem.Transactions
Security
System.Web.SecuritySystem.Web.Security
AccessControlAccessControl
CredentialsCredentials
CryptographyCryptography
System.Web.ConfigurationSystem.Web.Configuration
System.ConfigurationSystem.Configuration
System.ResourcesSystem.Resources
System.ManagementSystem.Management
System.DeploymentSystem.Deployment
System.DiagnosticsSystem.Diagnostics
Configuration Deployment/Management
PortsPorts
InteropServicesInteropServices
System.RuntimeSystem.Runtime
System.IOSystem.IO
System.CollectionsSystem.Collections
GenericGenericPermissionsPermissions
PolicyPolicy
PrincipalPrincipal
TokenToken
System.SecuritySystem.Security System.WebSystem.Web
AdministrationAdministration
ManagementManagement
.NET Framework “Whidbey”
Data
System.WebSystem.Web
PersonalizationPersonalization
CachingCaching
SessionStateSessionState
System.XmlSystem.Xml
SchemaSchema
SerializationSerialization
XpathXpath
QueryQuery
DataSetDataSet
MappingMapping
ObjectSpacesObjectSpaces
ObjectSpaceObjectSpace
QueryQuery
SchemaSchema
System.DataSystem.Data
SqlClientSqlClient
SqlTypesSqlTypes
SqlXMLSqlXML
OdbcClientOdbcClient
OleDbClientOleDbClient
OracleClientOracleClient
9
public class Listpublic class List{{ private object[] elements;private object[] elements; private int count;private int count;
public void Add(object element) {public void Add(object element) { if (count == elements.Length) Resize(count * 2);if (count == elements.Length) Resize(count * 2); elements[count++] = element;elements[count++] = element; }}
public object this[int index] {public object this[int index] { get { return elements[index]; }get { return elements[index]; } set { elements[index] = value; }set { elements[index] = value; } }}
public int Count {public int Count { get { return count; }get { return count; } }}}}
GenericsGenericspublic class List<T>{ private T[] elements; private int count;
public void Add(T element) { if (count == elements.Length) Resize(count * 2); elements[count++] = element; }
public T this[int index] { get { return elements[index]; } set { elements[index] = value; } }
public int Count { get { return count; } }}
List intList = new List();List intList = new List();
intList.Add(1);intList.Add(1);intList.Add(2);intList.Add(2);intList.Add("Three");intList.Add("Three");
int i = (int)intList[0];int i = (int)intList[0];
List intList = new List();List intList = new List();
intList.Add(1); // Argument is boxedintList.Add(1); // Argument is boxedintList.Add(2); // Argument is boxedintList.Add(2); // Argument is boxedintList.Add("Three"); // Should be an errorintList.Add("Three"); // Should be an error
int i = (int)intList[0]; // Cast requiredint i = (int)intList[0]; // Cast required
List<int> intList = new List<int>();
intList.Add(1); // No boxingintList.Add(2); // No boxingintList.Add("Three"); // Compile-time error
int i = intList[0]; // No cast required
Before GenericsBefore Generics
10
Generics In VBGenerics In VBPublic Class List(Of T) Private elements() As T Private elementcount As Integer Public Sub Add(ByVal element As T) If elementcount = elements.Length Then
Resize(elementcount * 2) elements(elementcount) = element count += 1 End Sub Public Default Property Item(ByVal index As Integer) As T Get Return elements(index) End Get Set (ByVal Value As T) elements(index) = Value End Set End Property
Dim intList As New List(Of Integer) intList.Add(1) // No boxing intList.Add(2) // No boxing intList.Add("Three") // Compile-time error Dim i As Integer = intList(0) // No cast required
11
Generics In C++Generics In C++generic<typename T>public ref class List { array<T>^ elements; int count;public: void Add(T element) { if (count == elements->Length) Resize(count * 2); elements[count++] = element; } property T default [int index] { T get() { return elements[index]; } void set(T value) { elements[index] = value; } } property int Count { int get() { return count; } }};
List<int>^ intList = gcnew List<int>();intList->Add(1); // No boxingintList->Add(2); // No boxingintList->Add("Three"); // Compile-time error int i = intList[0]; // No cast required
12
Generics In EiffelGenerics In Eiffelclass LIST [G] creation make feature {NONE} elements: ARRAY [G] count: INTEGER
invariant elements_not_void: elements /= Void
feature add (v: G) is do if count = elements.count then elements.grow (count * 2) end elements.put (v, count) count := count + 1 end
feature i_th (i: INTEGER): G is require valid_index: valid_index (i) do Result := elements.item (i) end
feature put_i_th (v: G; i: INTEGER) is require valid_index: valid_index (i)
do elements.put (v, i) end
feature valid_index (i: INTEGER): BOOLEAN is do Result := (0 <= i) and (i < count) end
feature make is do create elements.make (0, 5) endend
int_list: LIST [INTEGER] i: INTEGER
create int_list.make int_list.add (1) -- No boxing int_list.add (2) -- No boxing int_list.add ("Three") -- Compile time error i := int_list.i_th (0) -- No cast required
13
Innovations In Data AccessInnovations In Data Access
ADO.NETNo Model ChangesAdvanced FeaturesPerformance
System.XmlPerformanceXQuery
ObjectSpacesBuilds on ADO.NETDomain objects: Customer, Order, Address
ADO.NETNo Model ChangesAdvanced FeaturesPerformance
System.XmlPerformanceXQuery
ObjectSpacesBuilds on ADO.NETDomain objects: Customer, Order, Address
ARC403 Programming ADO.NET in "Whidbey“DAT410 .NET Framework: Developing Applications Using the New Object-Relational…ARC380 .NET Framework: What's New in System.Xml for "Whidbey"
Tools
Client Application Model
Windows Forms
Web & Service Application Model
ASP.NET Compact
FrameworkYukon
Data Systems Application Model
Presentation
Mobile PC & Devices Application Model
Communication
Command Line
NTService
System.MessagingSystem.Messaging
System.DirectoryServicesSystem.DirectoryServices
System.Runtime.RemotingSystem.Runtime.Remoting
System.Windows.FormsSystem.Windows.Forms
System.ConsoleSystem.Console
System.ServiceProcessSystem.ServiceProcess
System.Windows.FormsSystem.Windows.Forms System.WebSystem.Web System.Data.SqlServerSystem.Data.SqlServer
HttpWebRequestHttpWebRequest
FtpWebListenerFtpWebListener
SslClientStreamSslClientStream
WebClientWebClient
System.NetSystem.Net
NetworkInformationNetworkInformation
SocketsSockets
CacheCache
System.Windows.FormsSystem.Windows.Forms
FormsForms
ControlControl
Print DialogPrint Dialog
DesignDesign
System.Web.UISystem.Web.UI
PagePage
ControlControl
HtmlControlsHtmlControls
MobileControlsMobileControls
WebControlsWebControls
AdaptorsAdaptors
DesignDesign
System.DrawingSystem.Drawing
System.Web.ServicesSystem.Web.Services
Web.ServiceWeb.Service
DescriptionDescription
DiscoveryDiscovery
ProtocolsProtocols
System.TimersSystem.Timers
System.GlobalizationSystem.Globalization
System.SerializationSystem.Serialization
System.ThreadingSystem.Threading
System.TextSystem.Text
System.DesignSystem.Design
SerializationSerialization
CompilerServicesCompilerServices
Base & Application Services
Fundamentals
System.ComponentModelSystem.ComponentModel
System.CodeDomSystem.CodeDom
System.ReflectionSystem.Reflection
System.EnterpriseServicesSystem.EnterpriseServices
System.TransactionsSystem.Transactions
Security
System.Web.SecuritySystem.Web.Security
AccessControlAccessControl
CredentialsCredentials
CryptographyCryptography
System.Web.ConfigurationSystem.Web.Configuration
System.ConfigurationSystem.Configuration
System.ResourcesSystem.Resources
System.ManagementSystem.Management
System.DeploymentSystem.Deployment
System.DiagnosticsSystem.Diagnostics
Configuration Deployment/Management
PortsPorts
InteropServicesInteropServices
System.RuntimeSystem.Runtime
System.IOSystem.IO
System.CollectionsSystem.Collections
GenericGenericPermissionsPermissions
PolicyPolicy
PrincipalPrincipal
TokenToken
System.SecuritySystem.Security System.WebSystem.Web
AdministrationAdministration
ManagementManagement
.NET Framework “Whidbey” - Data
Data
System.XmlSystem.Xml
SchemaSchema
SerializationSerialization
XpathXpath
QueryQuery
DataSetDataSet
MappingMapping
ObjectSpacesObjectSpaces
ObjectSpaceObjectSpace
QueryQuery
SchemaSchema
System.DataSystem.Data
SqlClientSqlClient
SqlTypesSqlTypes
SqlXMLSqlXML
OdbcClientOdbcClient
OleDbClientOleDbClient
OracleClientOracleClient
14
ADO.NET And ObjectSpacesADO.NET And ObjectSpacesstring query = "SELECT * FROM T_CUSTOMERS
WHERE C_CITY=‘Seattle’";SqlCommand cmd = new SqlCommand(query, new SqlConnection(cnString));cn.Open();SqlDataReader r = cmd.ExecuteReader(); while (r.Read()) {
Console.WriteLine(r.GetString(1));} r.Close();
ObjectSpace os = new ObjectSpace(myConnections, myMappings);foreach (Customer c in os.GetObjectSet<Customer>( “City = Seattle”)) { Console.WriteLine(c.Name);}
DAT410: .NET Framework: Developing Applications Using the New Object-Relational Tech..
15
Innovations In Data Access:SQL Server “Yukon”
Innovations In Data Access:SQL Server “Yukon”
Extend SQL’s type system, stored procs, functions, triggers in managed code Leverage broad developer ecosystem Wide choice of languages
Visual Basic, C#, MC++, COBOL, …and T-SQL
Leverages much of the .NET Framework
BCL, network access, Web services…
Enable third parties to write libraries to extend the DB
Extend SQL’s type system, stored procs, functions, triggers in managed code Leverage broad developer ecosystem Wide choice of languages
Visual Basic, C#, MC++, COBOL, …and T-SQL
Leverages much of the .NET Framework
BCL, network access, Web services…
Enable third parties to write libraries to extend the DB
DAT300: Overview: What's New for Developers in SQL Server "Yukon“
Tools
Client Application Model
Windows Forms
Web & Service Application Model
ASP.NET Compact
Framework
Presentation
Mobile PC & Devices Application Model
Communication
Command Line
NTService
System.MessagingSystem.Messaging
System.DirectoryServicesSystem.DirectoryServices
System.Runtime.RemotingSystem.Runtime.Remoting
System.Windows.FormsSystem.Windows.Forms
System.ConsoleSystem.Console
System.ServiceProcessSystem.ServiceProcess
System.Windows.FormsSystem.Windows.Forms System.WebSystem.Web
HttpWebRequestHttpWebRequest
FtpWebListenerFtpWebListener
SslClientStreamSslClientStream
WebClientWebClient
System.NetSystem.Net
NetworkInformationNetworkInformation
SocketsSockets
CacheCache
System.Windows.FormsSystem.Windows.Forms
FormsForms
ControlControl
Print DialogPrint Dialog
DesignDesign
System.Web.UISystem.Web.UI
PagePage
ControlControl
HtmlControlsHtmlControls
MobileControlsMobileControls
WebControlsWebControls
AdaptorsAdaptors
DesignDesign
System.DrawingSystem.Drawing
System.Web.ServicesSystem.Web.Services
Web.ServiceWeb.Service
DescriptionDescription
DiscoveryDiscovery
ProtocolsProtocols
System.TimersSystem.Timers
System.GlobalizationSystem.Globalization
System.SerializationSystem.Serialization
System.ThreadingSystem.Threading
System.TextSystem.Text
System.DesignSystem.Design
SerializationSerialization
CompilerServicesCompilerServices
Base & Application Services
Fundamentals
System.ComponentModelSystem.ComponentModel
System.CodeDomSystem.CodeDom
System.ReflectionSystem.Reflection
System.EnterpriseServicesSystem.EnterpriseServices
System.TransactionsSystem.Transactions
Security
System.Web.SecuritySystem.Web.Security
AccessControlAccessControl
CredentialsCredentials
CryptographyCryptography
System.Web.ConfigurationSystem.Web.Configuration
System.ConfigurationSystem.Configuration
System.ResourcesSystem.Resources
System.ManagementSystem.Management
System.DeploymentSystem.Deployment
System.DiagnosticsSystem.Diagnostics
Configuration Deployment/Management
PortsPorts
InteropServicesInteropServices
System.RuntimeSystem.Runtime
System.IOSystem.IO
System.CollectionsSystem.Collections
GenericGenericPermissionsPermissions
PolicyPolicy
PrincipalPrincipal
TokenToken
System.SecuritySystem.Security System.WebSystem.Web
AdministrationAdministration
ManagementManagement
.NET Framework “Whidbey”- Yukon
Data
System.WebSystem.Web
PersonalizationPersonalization
CachingCaching
SessionStateSessionState
System.XmlSystem.Xml
SchemaSchema
SerializationSerialization
XpathXpath
QueryQuery
DataSetDataSet
MappingMapping
ObjectSpacesObjectSpaces
ObjectSpaceObjectSpace
QueryQuery
SchemaSchema
System.DataSystem.Data
SqlClientSqlClient
SqlTypesSqlTypes
SqlXMLSqlXML
OdbcClientOdbcClient
OleDbClientOleDbClient
OracleClientOracleClient
Yukon
Data Systems Application Model
System.Data.SqlServerSystem.Data.SqlServer
16
Innovations On The WebASP.NET WhidbeyInnovations On The WebASP.NET Whidbey
Reduce plumbing code by 70%Building BlocksPage Framework40+ New ASP.NET controls
Reduce plumbing code by 70%Building BlocksPage Framework40+ New ASP.NET controls
WSV200: ASP.NET: Overview of ASP.NET "Whidbey"
Tools
Client Application Model
Windows Forms
Web & Service Application Model
Compact FrameworkYukon
Data Systems Application Model
Presentation
Mobile PC & Devices Application Model
Communication
Command Line
NTService
System.MessagingSystem.Messaging
System.DirectoryServicesSystem.DirectoryServices
System.Runtime.RemotingSystem.Runtime.Remoting
System.Windows.FormsSystem.Windows.Forms
System.ConsoleSystem.Console
System.ServiceProcessSystem.ServiceProcess
System.Windows.FormsSystem.Windows.Forms System.Data.SqlServerSystem.Data.SqlServer
HttpWebRequestHttpWebRequest
FtpWebListenerFtpWebListener
SslClientStreamSslClientStream
WebClientWebClient
System.NetSystem.Net
NetworkInformationNetworkInformation
SocketsSockets
CacheCache
System.Windows.FormsSystem.Windows.Forms
FormsForms
ControlControl
Print DialogPrint Dialog
DesignDesign
System.Web.UISystem.Web.UI
PagePage
ControlControl
HtmlControlsHtmlControls
MobileControlsMobileControls
WebControlsWebControls
AdaptorsAdaptors
DesignDesign
System.DrawingSystem.Drawing
System.Web.ServicesSystem.Web.Services
Web.ServiceWeb.Service
DescriptionDescription
DiscoveryDiscovery
ProtocolsProtocols
System.TimersSystem.Timers
System.GlobalizationSystem.Globalization
System.SerializationSystem.Serialization
System.ThreadingSystem.Threading
System.TextSystem.Text
System.DesignSystem.Design
SerializationSerialization
CompilerServicesCompilerServices
Base & Application Services
Fundamentals
System.ComponentModelSystem.ComponentModel
System.CodeDomSystem.CodeDom
System.ReflectionSystem.Reflection
System.EnterpriseServicesSystem.EnterpriseServices
System.TransactionsSystem.Transactions
Security
System.Web.SecuritySystem.Web.Security
AccessControlAccessControl
CredentialsCredentials
CryptographyCryptography
System.Web.ConfigurationSystem.Web.Configuration
System.ConfigurationSystem.Configuration
System.ResourcesSystem.Resources
System.ManagementSystem.Management
System.DeploymentSystem.Deployment
System.DiagnosticsSystem.Diagnostics
Configuration Deployment/Management
PortsPorts
InteropServicesInteropServices
System.RuntimeSystem.Runtime
System.IOSystem.IO
System.CollectionsSystem.Collections
GenericGenericPermissionsPermissions
PolicyPolicy
PrincipalPrincipal
TokenToken
System.SecuritySystem.Security System.WebSystem.Web
AdministrationAdministration
ManagementManagement
.NET Framework “Whidbey” – ASP.NET
Data
System.WebSystem.Web
PersonalizationPersonalization
CachingCaching
SessionStateSessionState
System.XmlSystem.Xml
SchemaSchema
SerializationSerialization
XpathXpath
QueryQuery
DataSetDataSet
MappingMapping
ObjectSpacesObjectSpaces
ObjectSpaceObjectSpace
QueryQuery
SchemaSchema
System.DataSystem.Data
SqlClientSqlClient
SqlTypesSqlTypes
SqlXMLSqlXML
OdbcClientOdbcClient
OleDbClientOleDbClient
OracleClientOracleClient
ASP.NET
System.WebSystem.Web
17
Yukon And ASP.NET V2: Book Reviews Part 1
18
New ASP.NET Whidbey “Building Block” APIs
MembershipMembership Role ManagerRole Manager PersonalizationPersonalization
Site NavigationSite Navigation Site CountersSite Counters ManagementManagement
ASP.NET Whidbey Developer StackASP.NET Whidbey Developer Stack
19
Providers
New ASP.NET Whidbey “Building Block” APIs
MembershipMembership
Windows SQL Server Custom
Role ManagerRole Manager PersonalizationPersonalization
Site NavigationSite Navigation Site CountersSite Counters ManagementManagement
Provider Model Design Pattern
JET (Access)
ASP.NET Whidbey Developer StackASP.NET Whidbey Developer Stack
20
New ASP.NET Whidbey “Building Block” APIs
MembershipMembership Role ManagerRole Manager PersonalizationPersonalization
Site NavigationSite Navigation Site CountersSite Counters ManagementManagement
ASP.NET Whidbey Developer StackASP.NET Whidbey Developer Stack
New ASP.NET Whidbey “Page Framework” Features
Master PagesMaster Pages Themes/SkinsThemes/Skins Adaptive UIAdaptive UI
21
New ASP.NET Whidbey “Building Block” APIs
MembershipMembership Role ManagerRole Manager PersonalizationPersonalization
Site NavigationSite Navigation Site CountersSite Counters ManagementManagement
New ASP.NET Whidbey “Page Framework” Features
Master PagesMaster Pages Themes/SkinsThemes/Skins Adaptive UIAdaptive UI
New ASP.NET Whidbey “Control Buckets” (More than 40+)
SecuritySecurity Web PartsWeb PartsDataData NavigationNavigation
ASP.NET Whidbey Developer StackASP.NET Whidbey Developer Stack
22
Innovations On The WebInnovations On The Web
ASMXPerformance“RAD” Client Experience Standards Compliance
.NET RemotingAuthentication and Encryption Cross-process (IPC) channel Version Tolerant Serialization
System.NetNetwork awareness FTP protocol SSL encrypted stream Authentication stream
ASMXPerformance“RAD” Client Experience Standards Compliance
.NET RemotingAuthentication and Encryption Cross-process (IPC) channel Version Tolerant Serialization
System.NetNetwork awareness FTP protocol SSL encrypted stream Authentication stream ARC480 Programming With System.Net “Whidbey”
Tools
Client Application Model
Windows Forms
Web & Service Application Model
ASP.NET Compact
FrameworkYukon
Data Systems Application Model
Presentation
Mobile PC & Devices Application Model
Communication
Command Line
NTServiceSystem.Windows.FormsSystem.Windows.Forms
System.ConsoleSystem.Console
System.ServiceProcessSystem.ServiceProcess
System.Windows.FormsSystem.Windows.Forms System.WebSystem.Web System.Data.SqlServerSystem.Data.SqlServer
System.Windows.FormsSystem.Windows.Forms
FormsForms
ControlControl
Print DialogPrint Dialog
DesignDesign
System.Web.UISystem.Web.UI
PagePage
ControlControl
HtmlControlsHtmlControls
MobileControlsMobileControls
WebControlsWebControls
AdaptorsAdaptors
DesignDesign
System.DrawingSystem.Drawing
System.TimersSystem.Timers
System.GlobalizationSystem.Globalization
System.SerializationSystem.Serialization
System.ThreadingSystem.Threading
System.TextSystem.Text
System.DesignSystem.Design
SerializationSerialization
CompilerServicesCompilerServices
Base & Application Services
Fundamentals
System.ComponentModelSystem.ComponentModel
System.CodeDomSystem.CodeDom
System.ReflectionSystem.Reflection
System.EnterpriseServicesSystem.EnterpriseServices
System.TransactionsSystem.Transactions
Security
System.Web.SecuritySystem.Web.Security
AccessControlAccessControl
CredentialsCredentials
CryptographyCryptography
System.Web.ConfigurationSystem.Web.Configuration
System.ConfigurationSystem.Configuration
System.ResourcesSystem.Resources
System.ManagementSystem.Management
System.DeploymentSystem.Deployment
System.DiagnosticsSystem.Diagnostics
Configuration Deployment/Management
PortsPorts
InteropServicesInteropServices
System.RuntimeSystem.Runtime
System.IOSystem.IO
System.CollectionsSystem.Collections
GenericGenericPermissionsPermissions
PolicyPolicy
PrincipalPrincipal
TokenToken
System.SecuritySystem.Security System.WebSystem.Web
AdministrationAdministration
ManagementManagement
.NET Framework “Whidbey” - Web
Data
System.WebSystem.Web
PersonalizationPersonalization
CachingCaching
SessionStateSessionState
System.XmlSystem.Xml
SchemaSchema
SerializationSerialization
XpathXpath
QueryQuery
DataSetDataSet
MappingMapping
ObjectSpacesObjectSpaces
ObjectSpaceObjectSpace
QueryQuery
SchemaSchema
System.DataSystem.Data
SqlClientSqlClient
SqlTypesSqlTypes
SqlXMLSqlXML
OdbcClientOdbcClient
OleDbClientOleDbClient
OracleClientOracleClient
System.MessagingSystem.Messaging
System.DirectoryServicesSystem.DirectoryServices
System.Runtime.RemotingSystem.Runtime.Remoting
HttpWebRequestHttpWebRequest
FtpWebListenerFtpWebListener
SslClientStreamSslClientStream
WebClientWebClient
System.NetSystem.Net
NetworkInformationNetworkInformation
SocketsSockets
CacheCache
System.Web.ServicesSystem.Web.Services
Web.ServiceWeb.Service
DescriptionDescription
DiscoveryDiscovery
ProtocolsProtocols
23
Innovations On The Client TierInnovations On The Client Tier Web Style
Deployment of Client appsSimple Development
Fewer Lines of CodeFewer Clicks
Rich DevelopmentNew controls and enhancements
XP style themes rich look & feelPerformance
Web Style Deployment of Client appsSimple Development
Fewer Lines of CodeFewer Clicks
Rich DevelopmentNew controls and enhancements
XP style themes rich look & feelPerformance CLI210: Windows Forms: New Features in the .NET Framework "Whidbey" Release
CLI370: Introducing ClickOnce: The New Web Based Application Deployment…
Tools
Client Application Model Web & Service Application Model
ASP.NET Compact
FrameworkYukon
Data Systems Application Model
Presentation
Mobile PC & Devices Application Model
Communication
Command Line
NTService
System.MessagingSystem.Messaging
System.DirectoryServicesSystem.DirectoryServices
System.Runtime.RemotingSystem.Runtime.Remoting
System.Windows.FormsSystem.Windows.Forms
System.ConsoleSystem.Console
System.ServiceProcessSystem.ServiceProcess
System.WebSystem.Web System.Data.SqlServerSystem.Data.SqlServer
HttpWebRequestHttpWebRequest
FtpWebListenerFtpWebListener
SslClientStreamSslClientStream
WebClientWebClient
System.NetSystem.Net
NetworkInformationNetworkInformation
SocketsSockets
CacheCache
System.Windows.FormsSystem.Windows.Forms
FormsForms
ControlControl
Print DialogPrint Dialog
DesignDesign
System.Web.UISystem.Web.UI
PagePage
ControlControl
HtmlControlsHtmlControls
MobileControlsMobileControls
WebControlsWebControls
AdaptorsAdaptors
DesignDesign
System.DrawingSystem.Drawing
System.Web.ServicesSystem.Web.Services
Web.ServiceWeb.Service
DescriptionDescription
DiscoveryDiscovery
ProtocolsProtocols
System.TimersSystem.Timers
System.GlobalizationSystem.Globalization
System.SerializationSystem.Serialization
System.ThreadingSystem.Threading
System.TextSystem.Text
System.DesignSystem.Design
SerializationSerialization
CompilerServicesCompilerServices
Base & Application Services
Fundamentals
System.ComponentModelSystem.ComponentModel
System.CodeDomSystem.CodeDom
System.ReflectionSystem.Reflection
System.EnterpriseServicesSystem.EnterpriseServices
System.TransactionsSystem.Transactions
Security
System.Web.SecuritySystem.Web.Security
AccessControlAccessControl
CredentialsCredentials
CryptographyCryptography
System.Web.ConfigurationSystem.Web.Configuration
System.ConfigurationSystem.Configuration
System.ResourcesSystem.Resources
System.ManagementSystem.Management
System.DeploymentSystem.Deployment
System.DiagnosticsSystem.Diagnostics
Configuration Deployment/Management
PortsPorts
InteropServicesInteropServices
System.RuntimeSystem.Runtime
System.IOSystem.IO
System.CollectionsSystem.Collections
GenericGenericPermissionsPermissions
PolicyPolicy
PrincipalPrincipal
TokenToken
System.SecuritySystem.Security System.WebSystem.Web
AdministrationAdministration
ManagementManagement
.NET Framework “Whidbey” – Client
Data
System.WebSystem.Web
PersonalizationPersonalization
CachingCaching
SessionStateSessionState
System.XmlSystem.Xml
SchemaSchema
SerializationSerialization
XpathXpath
QueryQuery
DataSetDataSet
MappingMapping
ObjectSpacesObjectSpaces
ObjectSpaceObjectSpace
QueryQuery
SchemaSchema
System.DataSystem.Data
SqlClientSqlClient
SqlTypesSqlTypes
SqlXMLSqlXML
OdbcClientOdbcClient
OleDbClientOleDbClient
OracleClientOracleClient
Windows Forms
System.Windows.FormsSystem.Windows.Forms
24
Windows Forms And ClickOnce: Book Reviews Part 2
25CLI331: Building Polished Apps
26
Innovations For DevicesInnovations For DevicesMobile capabilities for all ASP.NET controlsTablet PC SDK extends the core FrameworkImprovements in .NET Compact Framework security, performance and interoperability
Mobile capabilities for all ASP.NET controlsTablet PC SDK extends the core FrameworkImprovements in .NET Compact Framework security, performance and interoperability
MBL311 Exploring New Features in .NET Compact Framework "Whidbey" ReleaseCLI350 Tablet PC Platform Roadmap
Tools
Client Application Model
Windows Forms
Web & Service Application Model
ASP.NET Yukon
Data Systems Application Model
Presentation
Mobile PC & Devices Application Model
Communication
Command Line
NTService
System.MessagingSystem.Messaging
System.DirectoryServicesSystem.DirectoryServices
System.Runtime.RemotingSystem.Runtime.Remoting
System.ConsoleSystem.Console
System.ServiceProcessSystem.ServiceProcess
System.Windows.FormsSystem.Windows.Forms System.WebSystem.Web System.Data.SqlServerSystem.Data.SqlServer
HttpWebRequestHttpWebRequest
FtpWebListenerFtpWebListener
SslClientStreamSslClientStream
WebClientWebClient
System.NetSystem.Net
NetworkInformationNetworkInformation
SocketsSockets
CacheCache
System.Windows.FormsSystem.Windows.Forms
FormsForms
ControlControl
Print DialogPrint Dialog
DesignDesign
System.Web.UISystem.Web.UI
PagePage
ControlControl
HtmlControlsHtmlControls
MobileControlsMobileControls
WebControlsWebControls
AdaptorsAdaptors
DesignDesign
System.DrawingSystem.Drawing
System.Web.ServicesSystem.Web.Services
Web.ServiceWeb.Service
DescriptionDescription
DiscoveryDiscovery
ProtocolsProtocols
System.TimersSystem.Timers
System.GlobalizationSystem.Globalization
System.SerializationSystem.Serialization
System.ThreadingSystem.Threading
System.TextSystem.Text
System.DesignSystem.Design
SerializationSerialization
CompilerServicesCompilerServices
Base & Application Services
Fundamentals
System.ComponentModelSystem.ComponentModel
System.CodeDomSystem.CodeDom
System.ReflectionSystem.Reflection
System.EnterpriseServicesSystem.EnterpriseServices
System.TransactionsSystem.Transactions
Security
System.Web.SecuritySystem.Web.Security
AccessControlAccessControl
CredentialsCredentials
CryptographyCryptography
System.Web.ConfigurationSystem.Web.Configuration
System.ConfigurationSystem.Configuration
System.ResourcesSystem.Resources
System.ManagementSystem.Management
System.DeploymentSystem.Deployment
System.DiagnosticsSystem.Diagnostics
Configuration Deployment/Management
PortsPorts
InteropServicesInteropServices
System.RuntimeSystem.Runtime
System.IOSystem.IO
System.CollectionsSystem.Collections
GenericGenericPermissionsPermissions
PolicyPolicy
PrincipalPrincipal
TokenToken
System.SecuritySystem.Security System.WebSystem.Web
AdministrationAdministration
ManagementManagement
.NET Framework “Whidbey” - Devices
Data
System.WebSystem.Web
PersonalizationPersonalization
CachingCaching
SessionStateSessionState
System.XmlSystem.Xml
SchemaSchema
SerializationSerialization
XpathXpath
QueryQuery
DataSetDataSet
MappingMapping
ObjectSpacesObjectSpaces
ObjectSpaceObjectSpace
QueryQuery
SchemaSchema
System.DataSystem.Data
SqlClientSqlClient
SqlTypesSqlTypes
SqlXMLSqlXML
OdbcClientOdbcClient
OleDbClientOleDbClient
OracleClientOracleClient
Compact Framework
System.Windows.FormsSystem.Windows.Forms
27
Road To LonghornRoad To LonghornAll building on the .NET Framework
Delivering amazing new user experiences with Avalon Extending Web services to the client with IndigoEveryday info with WinFS
All building on the .NET FrameworkDelivering amazing new user experiences with Avalon Extending Web services to the client with IndigoEveryday info with WinFS
Ric
hn
ess
Ric
hn
ess
Win16Win16 Win32Win32COMCOM
MFCMFC
Components
ComponentsServicesServices
APIsAPIsWindows
3.0
WinFXWinFX
.NET Framework “Whidbey”
28
Related Longhorn Era Technologies Related Longhorn Era Technologies
Windows FormsWorks great on Longhorn!Two-way interop with AvalonSee: CLI391 Windows Forms: Exploiting Windows “Longhorn” Features from Within Your Application
ASMX, .NET Remoting and Enterprise Services
All work great on Longhorn!Indigo unifies RPC style programming See: WSV203 “Indigo”: Connected Application Technology Roadmap
Windows FormsWorks great on Longhorn!Two-way interop with AvalonSee: CLI391 Windows Forms: Exploiting Windows “Longhorn” Features from Within Your Application
ASMX, .NET Remoting and Enterprise Services
All work great on Longhorn!Indigo unifies RPC style programming See: WSV203 “Indigo”: Connected Application Technology Roadmap
29
SummarySummary
Whidbey Design GoalsDeliver on the Fundamentals: Security, Deployment, Manageability, PerformanceEnhanced ProductivityPath to the Future WinFX
Whidbey Design GoalsDeliver on the Fundamentals: Security, Deployment, Manageability, PerformanceEnhanced ProductivityPath to the Future WinFX
30
.NET Framework Community.NET Framework Community
.NET Framework: http://msdn.microsoft.com/netframework ASP.NET: www.ASP.NETWindows Forms: www.WindowsForms.netMy Blog: http://blogs.gotdotnet.com/brada
.NET Framework: http://msdn.microsoft.com/netframework ASP.NET: www.ASP.NETWindows Forms: www.WindowsForms.netMy Blog: http://blogs.gotdotnet.com/brada
Please fill out a session eval!
31© 2003-2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.