1 / 37

Visual Studio “Orcas” & .NET Framework v3.5

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.com , http://www.danielmoth.com/Blog. .NET Through the Ages. “Green Bits” and “Red Bits”. v3.0. v2.0 RTM.

december
Download Presentation

Visual Studio “Orcas” & .NET Framework v3.5

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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.com, http://www.danielmoth.com/Blog

  2. .NET Through the Ages

  3. “Green Bits” and “Red Bits” v3.0 v2.0 RTM v3.5.xxxx.xx v2.0. 50727.42 v2.0. 50727.42 v3.0.xx Vista RTM v2.0. 50727.xx v3.0 v3.5 Vista Redist v3.5 Redist v2.0. 50727.312

  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. .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

  7. .NET Framework 3.5 – part 2 of 3 See all these topics later in this session • 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

  8. .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

  9. 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

  10. 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

  11. System.Core.dll (part 3 of 7) • System.Security.Cryptography • Hash Algorithms

  12. System.Core.dll (part 4 of 7) • System.Security.Cryptography • Symmetric Algorithms • Asymmetric Algorithms

  13. 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

  14. 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

  15. System.Core.dll (part 7 of 7) • LINQ • System.Linq.* • System.Runtime.CompilerServices.* we’ll see this later in this session

  16. Peer To Peer Technology Peer to Peer • 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 ) P2P Mesh

  17. 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 Server DB Client DB

  18. ADO.NET Synchronisation Services Server DB Sync Agent Transport Client Sync Provider Server Sync Provider Proxy Service Sync Adapters Sync Table Sync Group Client DB

  19. 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

  20. 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

  21. 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

  22. Language Innovations Query expressions var contacts = from c in customers where c.City== "Hove" select new { c.Name, c.Phone }; Local variable type inference Lambda expressions var contacts = customers .Where(c => c.City== "Hove") .Select(c => new { c.Name, c.Phone }); Extension methods Object initializers Anonymous types

  23. 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? )

  24. Mobility in “Orcas” timeframe • mini AGENDA • Visual Studio for Devices • .NET Compact Framework 3.5 • Device Emulator v3 • Windows Mobile 6

  25. Visual Studio “Orcas” Enhancements

  26. .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

  27. .NET Compact Framework v3.5

  28. Device Emulator v2 • Faster Performance and Bug fixes • Windows Vista support • Tablet PC support • Skins • Updated Config UI • Automatic funckey detection • Networking

  29. 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

  30. Windows Mobile 6Development 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

  31. LINQ to SQL (System.Data.Linq) LINQ Pattern fromitemNameinsrcExpr join itemNameinsrcExpronkeyExprequalskeyExpr (intoitemName)? letitemName= selExpr wherepredExpr orderby(keyExpr(ascending| descending)?)* selectselExpr group selExprbykeyExpr intoitemName query-body Object Relational Mapping API Code Gen Tools

  32. LINQ to XML(System.Xml.Linq) LINQ Pattern fromitemNameinsrcExpr join itemNameinsrcExpronkeyExprequalskeyExpr (intoitemName)? letitemName= selExpr wherepredExpr orderby(keyExpr(ascending| descending)?)* selectselExpr group selExprbykeyExpr intoitemName query-body New XML API

  33. 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!

  34. AddIn Pipeline

  35. Summary Codename “Orcas” • 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

More Related