Download presentation
Presentation is loading. Please wait.
Published byMadeline Blair Modified over 9 years ago
1
Visual Studio “Orcas” &.NET Framework v3.5 Mike Taulty, Daniel Moth Developer & Platform Group Microsoft Ltd Mike.Taulty@microsoft.com Daniel.Moth@microsoft.com http://www.mtaulty.comhttp://www.mtaulty.com, http://www.danielmoth.com/Bloghttp://www.danielmoth.com/Blog
2
.NET Through the Ages
3
“Green Bits” and “Red Bits” v2.0 RTM Vista RTM v3.5 Vista Redist v3.5 Redist
4
Agenda Scene Setting Tour of IDE Tour of Fx 3.5 Peer-to-Peer ADO.NET Sync Services Fx 3.0 in “Orcas” LINQ (to objects) Office Development Mobility LINQ to SQL LINQ to XML AddIn Model
5
Tour of the IDE Not as big as VS.NET 2003 -> VS2005 Designed to run great on Windows Vista Comprehensive OOB experience Today –VS2005 + SP1 + SP1Update + VSTO2005SE + WF Extensions + WPF/WCF Extensions etc With “Orcas” you get it all plus more Multitargeting Aesthetic and usability improvements
6
VS IDE Tour
7
.NET Framework 3.5 – part 1 of 3 Green bits (new assemblies) System.DirectoryServices.AccountManagement.dll –A managed API for users, groups, etc. –Based on SDS/ADSI under the hood –Works with ADAM as well as AD System.Management.Instrumentation.dll –WMI.NET Provider Extension 2.0 –Improved scalability for large collections of WMI entities System.Web.Extensions.dll
8
.NET Framework 3.5 – part 2 of 3 System.Net.dll System.WorkflowServices.dll System.ServiceModel.Web.dll System.Data.Linq.dll System.Xml.Linq.dll System.AddIn.dll, System.AddIn.Contract.dll See all these topics later in this session
9
.NET Framework 3.5 – part 3 of 3 System.Core.dll –17 namespaces! –11 with less than 6 types –Remember the red bits vs green bits? –Almost all of System.Core.dll could have been in mscorlib.dll –No single focus –Threading, Security, TimeZone, Diagnostics, Collections, WMI, LINQ, Pipes
10
Where are the Fx 3.5 Assemblies?
11
System.Core.dll (part 1 of 7) System.Diagnostics. EventSchemaTraceListener –High Performance, Logs XML to disk. –Disk logging options e.g. circular logging across files Eventing.EventProviderTraceListener –Logs to ETW –Thread-safe –Most performant Eventing.Reader.* PerfomanceData.* –Vista-only: wraps Perf* APIs in advapi32.dll
12
System.Core.dll (part 2 of 7) System.Security.Cryptography Suite B support: AES –FIPS-certified implementations of SHA and AES Elliptic Curve Diffie Hellman and Elliptic Curve Digital Signature Algorithm –Built on CNG in Vista
13
System.Core.dll (part 3 of 7) System.Security.Cryptography Hash Algorithms
14
System.Core.dll (part 4 of 7) System.Security.Cryptography Symmetric Algorithms Asymmetric Algorithms
15
System.Core.dll (part 5 of 7) System.Collections.Generic.HashSet Unordered collection of unique items Union, intersection and symmetric difference System.TimeZoneInfo Replaces System.TimeZone Convert DateTime from one time TZ to another Create your own TimeZone On Vista, takes advantage of Dynamic Time Zone
16
System.Core.dll (part 6 of 7) System.Threading.ReaderWriterLockSlim Perf-critical, scalable ReadWriterLock Deadlock-free upgradable read support System.IO.Pipes.* Wrapper for Win32 API Named and anonymous Synchronous and async
17
System.Core.dll (part 7 of 7) LINQ System.Linq.* System.Runtime.CompilerServices.* we’ll see this later in this session
18
Peer To Peer Technology Peer Name Resolution Protocol Name registration Name resolution No DNS Server Involved Peer Collaboration API Register applications Discover Peers Invite them to apps More to come? PNRP V1 supported from Windows XP Service Pack 1 onwards V2 supported in Vista (not compatible with V1 ) ( Collaboration - Windows Vista feature) ( All reliant on IPV6 )
19
Peer to Peer
20
ADO.NET Synchronisation Services Synchronisation Framework Online/Offline Applications 2-tier, N-tier architectures Client Database SQL Server Compact Edition Server Database Any OLEDB compliant store “Service” Based Approach
21
ADO.NET Synchronisation Services Server Sync Provider Server Sync Provider Sync Agent Sync Agent Sync Adapters Sync Adapters Client Sync Provider Client Sync Provider Sync Table Sync Group Client DB Server DB Transport Proxy Service
22
ADO.Net Sync
23
Workflow & Communication Foundation(s) Workflow WCF Send/Receive WorkflowServiceHost Rules Communication Foundation HTTP without SOAP –XML or JSON serialisation RSS + ATOM Support Partial Trust Support
24
WCF and WF
26
Where we’ve Been, Where we’re Going Scene Setting Tour of IDE Tour of Fx 3.5 Peer-to-Peer ADO.NET Sync Services Fx 3.0 in “Orcas” LINQ (to objects) Office Development Mobility LINQ to SQL LINQ to XML AddIn Model
27
Language Design Goals Simplify querying data Integrate query and transform operations Unify query of data –object, relational, and XML And Don’t tie language to specific APIs Remain 100% backwards compatible
28
LINQ to Objects
29
Language Innovations var contacts = from c in customers where c.City == "Hove" select new { c.Name, c.Phone }; var contacts = customers.Where(c => c.City == "Hove").Select(c => new { c.Name, c.Phone }); Extension methods Lambda expressions Query expressions Object initializers Anonymous types Local variable type inference
30
Office 2007 Development 2003 & 2007 Support 2007 Customisations Document Level Application Level Office Ribbon Designer Outlook Form Region Designer Custom Action Panes ClickOnce Deployment? ( maybe? )
31
Office in “Orcas”
32
Mobility in “Orcas” timeframe mini AGENDA Visual Studio for Devices.NET Compact Framework 3.5 Device Emulator v3 Windows Mobile 6
33
Mobile Development
34
Visual Studio “Orcas” Enhancements Unit Testing for Devices Device Configuration Manager Device Certificate Manager Device Emulator Version 3.0 Windows Mobile 5.0 SDK is in-the-box.NET Compact Framework 2.0 SP2 and 3.5 Updated Compilers, MFC Libraries, Tools Managed CoreCon Framework
35
.NET Compact Framework v3.5 Distributed, occasionally-connected applications Support new language features New and improved diagnostic tools Customer feature requests Maintain performance, size and compatibility
36
.NET Compact Framework v3.5 Windows CE 4.2ARM, MIPS II, MIPS IV, SH4, X86Runtime support Windows CE 5.0ARM, MIPS II, MIPS IV, SH4, X86Includes headless devices Windows CE 6.0ARM, MIPS II, MIPS IV, SH4, X86Includes headless devices Windows Mobile 2003ARM Pocket PC Pocket PC Phone Edition Windows Mobile 5.0ARM Pocket PC Pocket PC Phone Edition Smartphone Windows Mobile 6.0ARM Classic Standard Professional
37
Device Emulator v2 Faster Performance and Bug fixes Windows Vista support Tablet PC support Skins Updated Config UI Automatic funckey detection Networking
38
Device Emulator v3 Device Emulator Manager interface fully automated Enumerate all installed device emulators images Programmatically connect and cradle emulators Fully automated COM interface – IDEMVirtualMachineManager Access to interfaces via VBScript XML config file to configure emulator instances Easily-customizable alternative to DE command line New.decfg file format Save emulator settings under “My Device Emulators” Read and reconfigure emulator settings at run time via code DEM UI changes to mirror automation interfaces
39
Windows Mobile 6 Development Platform.NET Compact Framework v2 in ROM SQL Server Compact Edition in ROM Compatibility with Windows Mobile 5.0 Support for Basic AJAX Applications New native APIs New Windows Mobile 6 SDK
40
LINQ to SQL (System.Data.Linq) LINQ Pattern from itemName in srcExpr join itemName in srcExpr on keyExpr equals keyExpr (into itemName)? let itemName = selExpr where predExpr orderby (keyExpr (ascending | descending)?)* select selExpr group selExpr by keyExpr into itemName query-body LINQ Pattern from itemName in srcExpr join itemName in srcExpr on keyExpr equals keyExpr (into itemName)? let itemName = selExpr where predExpr orderby (keyExpr (ascending | descending)?)* select selExpr group selExpr by keyExpr into itemName query-body Object Relational Mapping API Code Gen Tools
41
LINQ Pattern from itemName in srcExpr join itemName in srcExpr on keyExpr equals keyExpr (into itemName)? let itemName = selExpr where predExpr orderby (keyExpr (ascending | descending)?)* select selExpr group selExpr by keyExpr into itemName query-body LINQ Pattern from itemName in srcExpr join itemName in srcExpr on keyExpr equals keyExpr (into itemName)? let itemName = selExpr where predExpr orderby (keyExpr (ascending | descending)?)* select selExpr group selExpr by keyExpr into itemName query-body LINQ to XML (System.Xml.Linq)
42
LINQ to SQL, LINQ to XML
43
System.AddIn, System.AddIn.Contract Host provides service to addin or vice versa Discovery is attribute-based with smart caching Reflection only loading from pre-specified directory find and activate add-ins in 3 lines of code AddIns can be activated in separate AppDomain or process sanboxed and isolated Previous versions can continue to work with new hosts!
44
AddIn Pipeline
45
System.AddIn
46
Summary Visual Studio “Orcas” Great for Windows Vista Development Great for Office 2007 Development Great for LINQ &.NET Framework v3.5 Great for Web Development Pretty Spiffy for.NET 2.0 projects too! –Multitargeting (and no new CLR) –Use the new C#3 and VB9 language features
47
© 2007 Microsoft Ltd. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.