SlideShare a Scribd company logo
1 of 103
Download to read offline
MSDN Presents… ,[object Object]
What’s New in .NET 4.0
SharePoint 2010 for Developers,[object Object]
dbost@microsoft.com
davebost.com
@davebost
http://thirstyDeveloper.com @thirstyd
get on with it…
What’s New:Visual Studio 2010
Huge List of New Features! Breakpoint Labeling Breakpoint Searching Breakpoint Import/Export Dynamic Data Tooling WPF Tree Visualizer Call Hierarchy Improved WPF Tooling Historical Debugging Mini-Dump Debugging Quick Search Better Multi-Monitor  Support Highlight References Parallel Stacks Window Parallel Tasks Window Document Map Margin Generate From Usage Concurrency Profiler Inline Call Tree Extensible Test Runner MVC Tooling Web Deploy JQuery Intellisense SharePoint Tooling HTML Snippets Web.config Transformation Click-Once Enhancements for Microsoft Office
Overview General Improvements Debugging Parallelism Web Extensibility
General Improvements
Highlighting References CTRL+SHIFT+DOWN ARROW (forward) CTRL+SHIFT+UP ARROW (reverse)  Automatic highlighting of a symbol Can be used with declarations, references, and many other symbols
Navigate To CTRL + , Provides search-as-you-type support for symbols Enables quick searching based on case usage
Docking Windows New Guide Diamond Windows can be docked anywhere Can now pull document windows outside the IDE
Call Hierarchy (C# only) CTRL + K, T Used to see calls to and from a method Great way to see calls at design time
Zoom CTRL + Mouse Wheel New feature that enhances the size of your code Very useful for pair programming (or similar scenarios)
Generate from Usage Used to automatically create stub code Enables you to use classes and members before you define them
Intellisense Suggestion Mode CTRL + ALT + SPACE Used when classes and members are used before they are defined Helps to reduce situations where IntelliSense inserts unintended text into the editor
General Improvements
Debugging
Breakpoints Can add labels to breakpoints All breakpoints are now searchable Import / Export now available
Floating Data Tips
Threading Completely redesigned threading window Now provides filtering, call-stack searching and expansion, and grouping New columns added: Affinity masks Process names Managed IDs
Dumps You can save a dump file and debug it later, either on the build computer or on another computer that has the source files and debugging symbols Can read dump files that contain information about managed code, unmanaged code, or a mixture of both
Parallel  Tasks and Stacks Used to visualize and debug parallel code that is written in C++, C#, or Visual Basic Using the Parallel Stacks window, you can view multiple call stacks at the same time in a single view Parallel Tasks allow you to see multiple tasks and the corresponding status of those tasks
Debugging
Web
Code Snippets Snippets are now available in web applications Two major contextual areas: JavaScript HTML
Code Snippets
DyanmicIntellisense for JavaScript
Web.config Transforms 	You can create configuration file transforms to modify your project's Web.config file to work with various deployment environments http://blogs.msdn.com/webdevtools
One-Click Web Deployment With Visual Studio 2010, MSDeploy is integrated directly into Visual Studio Once you have your profiles configured, you can easily deploy to a given environment with a single click
Web
Extensibility
The Visual Studio Gallery http://visualstudiogallery.msdn.microsoft.com
Making Your Extensions http://msdn.microsoft.com/en-us/vsx/default.aspx
Extensions
Resources What’s New in Visual Studio 2010http://msdn.microsoft.com/en-us/library/bb386063(VS.100).aspx Visual Studio on MSDNhttp://msdn.microsoft.com/vstudio Visual Studio 2010 Tips and Trickshttp://blogs.msdn.com/zainnab
15 Minute Break
What’s New in the.NET Framework 4.0
From There to Here… SP1 3.5 3.0 .NET 1.0 .NET 1.1 .NET 2.0 .NET 4 2002 2003 2008 CTP! 2005-08 CLR 1.0 CLR 1.1 CLR 2.0 CLR 4
.NET Framework Architecture WPF Win Forms DLR ASP.NET WCF And more! LINQ Base Class Libraries Common Language Runtime JIT & NGEN Garbage Collector Security Model Exception Handling Loader & Binder
Overview Client Profile Visualization Data Programming Languages Common Language Runtime (CLR) Base Class Libraries (BCL) Web
Client Profile
Client Profile Subset of the full .NET Framework  Leveraged for faster deployments Two Sections Client Profile Extended Streamlined pieces of  Windows Presentation Foundation (WPF) Windows Forms Windows Communication Foundation (WCF) ClickOnce
Visualization
Windows Presentation Foundation(WPF) New Controls DataGrid Calendar DatePicker Visual State Manager Touch and Manipulation Text
Calendar and DatePickerControsl
Data
Pluralization & Foreign Keys
Model-First Existing Database Generated Entity Data Model Database First (v1) Generated Database Entity Data Model Model First (v2)
Model-First
POCO Class Definition Everything Navigation Property Definition Scalar Property Definition
Deferred / Lazy Loading Explicit Deferred / lazy
Complex Types VS.
Programming Languages
Visual Basic Auto-Implemented Properties Shortened syntax that enables you to quickly specify a property of a class without having to write code Collection Initializer Shortened syntax that enables you to create a collection and populate it with an initial set of values Implicit Line Continuation Enables you to continue a statement on the next consecutive line without using the underscore character  Public Property Owner As String = "DefaultName" Function AddStuff( ByValfirst As Integer, ByValsecond As Integer                                                 ) As Integer Returnfirst +                                    second End Function Public PropertyItems As New List(Of String)= {“M“, “T“, “W“}
C# Dynamic Type Operations that contain expressions of type dynamic are not resolved or type checked by the compiler. The compiler packages together information about the operation, and that information is later used to evaluate the operation at run time Optional and Named Parameters Named arguments enable you to specify an argument for a particular parameter by associating the argument with the parameter's name rather than with the parameter's position in the parameter list. Optional  arguments enable you to omit arguments for some parameters. Both techniques can be used with methods, indexers, constructors, and delegates.
C#:       - dynamic keyword      - named and optional parameters
F# IDE support for F# Interactive F# for prototyping code Asynchronous constructs Parallel constructs Immutable data types
Common Language Runtime(CLR)
Existing Side-By-Side (SxS) 2.0 add-in 3.0 add-in 3.5 add-in 1.1 add-in 3.5 .NET 1.1 3.0 .NET 2.0 Host Process (i.e. Outlook)
In-Process Side-By-Side (SxS) 2.0 add-in 3.0 add-in 3.5 add-in 4.0 add-in 3.5 .NET 4.0 3.0 .NET 2.0 Host Process (i.e. Outlook)
Base Class Libraries(BCL)
Task Parallel Library (TPL) ,[object Object]
System.Threading
System.Threading.Tasks// Sequential foreach (var item in sourceCollection)  {      Process(item);  }  // Parallel Parallel.ForEach (sourceCollection, item => Process(item));
New Sync Primitives in .NET 4 Thread-safe, scalable collections IProducerConsumerCollection<T> ConcurrentQueue<T> ConcurrentStack<T> ConcurrentBag<T> ConcurrentDictionary<TKey,TValue> Phases and work exchange Barrier  BlockingCollection<T> CountdownEvent Partitioning {Orderable}Partitioner<T> Partitioner.Create Exception handling AggregateException Initialization Lazy<T> LazyInitializer.EnsureInitialized<T> ThreadLocal<T> Locks ManualResetEventSlim SemaphoreSlim SpinLock SpinWait Cancellation CancellationToken{Source} ManyCore: http://microoftpdc.com/Sessions/P09-09  (50:00)
Parallelize For Loops Control flow is a primary source of work Parallelizable when iterations are (or can be made) independent Synchronous All work quiesces, regularly or exceptionally Lots of knobs Cancelation, breaking, task-local state, custom partitioning, scheduling, degree of parallelism foreach(var item in data)  {    work(item); } for (int i = 0; i < n; i++)  {    work(i); } StatementA(); StatementB; StatementC(); Parallel.ForEach(data, item=> {    work(item); }); Parallel.For(0, n, i=>  {    work(i); }); Parallel.Invoke(    () => StatementA(),     () => StatementB,     () => StatementC()); ManyCore: http://microsoftpdc.com/Sessions/P09-09
Parallel LINQ (PLINQ) ,[object Object]
Extension methods for the IParallelEnumerable interface
Additional operators for parallel operationsfrom n in names.AsParallel().WithDegreeOfParallelism(ProcessorsToUse.Value)                        where n.Name.Equals(queryInfo.Name, StringComparison.InvariantCultureIgnoreCase) && n.State == queryInfo.State &&  n.Year >= yearStart && n.Year <= yearEnd orderbyn.Year ascending                        select n;
Parallelism
Design By Contract System.Diagnostics.Contracts Code Contracts introduce a way to specify contractual information that is not represented by a method or type’s signature alone Scenarios for using contracts include: Perform static bug finding, which enables some bugs to be found without executing the code Create guidance for automated testing tools to enhance test coverage Create a standard notation for code behavior, which provides more information for documentation public Boolean ExampleMethod(String parameter) { if (parameter == null) throw newArgumentNullException("parameter must be non-null"); } http://msdn.microsoft.com/devlabs
Data Types BigInteger Immutable type that represents an arbitrarily large integer whose value in theory has no upper or lower bounds SortedSet<T> Provides a self-balancing tree that maintains data in sorted order after insertions, deletions, and searches
I/O Memory-Mapped File Used to edit very large files and to create shared memory for inter-process communication Stream.CopyTo Allows you to copy the contents of one stream into another
Web
Model-View-Controller (MVC) Huge investment from Microsoft Alternative to WebForms Modular Architecture MVC 2.0 Integrated in .NET Framework 4.0
ASP.NET Webforms Ability to set meta tags More control over view state Added and Updated browser definition files ASP.NET Routing The ability to persist selected rows in data controls More control over rendered HTML in the FormView and ListView controls Filtering support for data source controls
Dynamic Data A RAD experience for quickly building a data-driven Web site Automatic validation that is based on constraints defined in the data model The ability to easily change the markup that is generated for fields in the GridView and DetailsView controls by using field templates
Web
Resources .NET Developer Centerhttp://msdn.microsoft.com/net Data Developer Centerhttp://msdn.microsoft.com/data Concurrency (Parallelism)http://msdn.microsoft.com/concurrency ASP.NET MVChttp://asp.net/mvc WPF and Windows Formshttp://windowsclient.net
15 Minute Break
SharePoint Development withVisual Studio 2010
SharePoint 2010Enhancements New object model LINQ for SharePoint Native support for Silverlight Sandboxed Solutions External data lists
Overview SharePoint Projects Event Receivers Deployment & Debugging Web Parts
SharePoint Projects
Server Explorer
Packages
SharePoint Projects Then now
Empty Project
SharePoint Projects
Event Receivers
Event Receivers
Creating Event Receivers
Event Receivers
Deployment & Debugging
Deployment:  Project Creation
Properties:SharePoint Tab
Deployment
Debugging
Deployment & Debugging

More Related Content

What's hot

Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]vaishalisahare123
 
Lecture 1 introduction to vb.net
Lecture 1   introduction to vb.netLecture 1   introduction to vb.net
Lecture 1 introduction to vb.netMUKALU STEVEN
 
Automatic answer checker
Automatic answer checkerAutomatic answer checker
Automatic answer checkerYesu Raj
 
.Net Overview -- Training (Lesson 1)
.Net Overview -- Training (Lesson 1).Net Overview -- Training (Lesson 1)
.Net Overview -- Training (Lesson 1)Rishi Kothari
 
Architecture of .net framework
Architecture of .net frameworkArchitecture of .net framework
Architecture of .net frameworkThen Murugeshwari
 
ASP.NET 01 - Introduction
ASP.NET 01 - IntroductionASP.NET 01 - Introduction
ASP.NET 01 - IntroductionRandy Connolly
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.netJaya Kumari
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.netsuraj pandey
 
Dotnet Basics Presentation
Dotnet Basics PresentationDotnet Basics Presentation
Dotnet Basics PresentationSudhakar Sharma
 
Aspnet architecture
Aspnet architectureAspnet architecture
Aspnet architecturephantrithuc
 
.Net framework
.Net framework.Net framework
.Net frameworkArun Pal
 
Developing Microsoft .NET Applications for Windows
Developing Microsoft .NET Applications for Windows Developing Microsoft .NET Applications for Windows
Developing Microsoft .NET Applications for Windows Rishi Kothari
 
Microsoft .NET Development Platform Internationalization
Microsoft .NET Development Platform InternationalizationMicrosoft .NET Development Platform Internationalization
Microsoft .NET Development Platform InternationalizationRishi Kothari
 
Migrating To Visual Studio 2008 & .Net Framework 3.5
Migrating To Visual Studio 2008 & .Net Framework 3.5Migrating To Visual Studio 2008 & .Net Framework 3.5
Migrating To Visual Studio 2008 & .Net Framework 3.5Clint Edmonson
 
Dotnet Frameworks Version History
Dotnet Frameworks Version HistoryDotnet Frameworks Version History
Dotnet Frameworks Version Historyvoltaincx
 
Introduction to .net framework
Introduction to .net frameworkIntroduction to .net framework
Introduction to .net frameworkArun Prasad
 

What's hot (20)

Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]
 
Lecture 1 introduction to vb.net
Lecture 1   introduction to vb.netLecture 1   introduction to vb.net
Lecture 1 introduction to vb.net
 
Automatic answer checker
Automatic answer checkerAutomatic answer checker
Automatic answer checker
 
As Pdotnet
As PdotnetAs Pdotnet
As Pdotnet
 
.Net Overview -- Training (Lesson 1)
.Net Overview -- Training (Lesson 1).Net Overview -- Training (Lesson 1)
.Net Overview -- Training (Lesson 1)
 
.net framework
.net framework.net framework
.net framework
 
Architecture of .net framework
Architecture of .net frameworkArchitecture of .net framework
Architecture of .net framework
 
Vb.net ide
Vb.net ideVb.net ide
Vb.net ide
 
ASP.NET 01 - Introduction
ASP.NET 01 - IntroductionASP.NET 01 - Introduction
ASP.NET 01 - Introduction
 
Working in Visual Studio.Net
Working in Visual Studio.NetWorking in Visual Studio.Net
Working in Visual Studio.Net
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.net
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.net
 
Dotnet Basics Presentation
Dotnet Basics PresentationDotnet Basics Presentation
Dotnet Basics Presentation
 
Aspnet architecture
Aspnet architectureAspnet architecture
Aspnet architecture
 
.Net framework
.Net framework.Net framework
.Net framework
 
Developing Microsoft .NET Applications for Windows
Developing Microsoft .NET Applications for Windows Developing Microsoft .NET Applications for Windows
Developing Microsoft .NET Applications for Windows
 
Microsoft .NET Development Platform Internationalization
Microsoft .NET Development Platform InternationalizationMicrosoft .NET Development Platform Internationalization
Microsoft .NET Development Platform Internationalization
 
Migrating To Visual Studio 2008 & .Net Framework 3.5
Migrating To Visual Studio 2008 & .Net Framework 3.5Migrating To Visual Studio 2008 & .Net Framework 3.5
Migrating To Visual Studio 2008 & .Net Framework 3.5
 
Dotnet Frameworks Version History
Dotnet Frameworks Version HistoryDotnet Frameworks Version History
Dotnet Frameworks Version History
 
Introduction to .net framework
Introduction to .net frameworkIntroduction to .net framework
Introduction to .net framework
 

Viewers also liked

Using Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile Space
Using Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile SpaceUsing Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile Space
Using Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile Spacegoodfriday
 
NoSQL Database in .NET Apps
NoSQL Database in .NET AppsNoSQL Database in .NET Apps
NoSQL Database in .NET AppsShiju Varghese
 
The .net remote systems
The .net remote systemsThe .net remote systems
The .net remote systemsRaghu nath
 
Microsoft .NET Platform
Microsoft .NET PlatformMicrosoft .NET Platform
Microsoft .NET PlatformPeter R. Egli
 
Overview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technologyOverview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technologyPeter R. Egli
 
Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)Vangos Pterneas
 
C# Tutorial
C# Tutorial C# Tutorial
C# Tutorial Jm Ramos
 

Viewers also liked (12)

Using Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile Space
Using Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile SpaceUsing Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile Space
Using Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile Space
 
ASP.NET MVC for Begineers
ASP.NET MVC for BegineersASP.NET MVC for Begineers
ASP.NET MVC for Begineers
 
NoSQL Database in .NET Apps
NoSQL Database in .NET AppsNoSQL Database in .NET Apps
NoSQL Database in .NET Apps
 
The .net remote systems
The .net remote systemsThe .net remote systems
The .net remote systems
 
Microsoft .NET Platform
Microsoft .NET PlatformMicrosoft .NET Platform
Microsoft .NET Platform
 
Overview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technologyOverview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technology
 
Web api
Web apiWeb api
Web api
 
Next .NET and C#
Next .NET and C#Next .NET and C#
Next .NET and C#
 
Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)
 
C# basics
 C# basics C# basics
C# basics
 
C#/.NET Little Wonders
C#/.NET Little WondersC#/.NET Little Wonders
C#/.NET Little Wonders
 
C# Tutorial
C# Tutorial C# Tutorial
C# Tutorial
 

Similar to MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers

A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010Abram John Limpin
 
Visual Studio .NET2010
Visual Studio .NET2010Visual Studio .NET2010
Visual Studio .NET2010Satish Verma
 
Overview of VS2010 and .NET 4.0
Overview of VS2010 and .NET 4.0Overview of VS2010 and .NET 4.0
Overview of VS2010 and .NET 4.0Bruce Johnson
 
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0Antonio Chagoury
 
Whidbey old
Whidbey old Whidbey old
Whidbey old grenaud
 
Visual Studio 2010 and .NET 4.0 Overview
Visual Studio 2010 and .NET 4.0 OverviewVisual Studio 2010 and .NET 4.0 Overview
Visual Studio 2010 and .NET 4.0 Overviewbwullems
 
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan
 
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0Thomas Conté
 
Lap around .net 4
Lap around .net 4Lap around .net 4
Lap around .net 4Abdul Khan
 
Whats New In 2010 (Msdn & Visual Studio)
Whats New In 2010 (Msdn & Visual Studio)Whats New In 2010 (Msdn & Visual Studio)
Whats New In 2010 (Msdn & Visual Studio)Steve Lange
 
Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02Wei Sun
 
Data Driven WPF and Silverlight Applications
Data Driven WPF and Silverlight ApplicationsData Driven WPF and Silverlight Applications
Data Driven WPF and Silverlight ApplicationsDave Allen
 
Intro to .NET for Government Developers
Intro to .NET for Government DevelopersIntro to .NET for Government Developers
Intro to .NET for Government DevelopersFrank La Vigne
 
San Diego ASP.NET Meeting Oct 21st
San  Diego  ASP.NET Meeting Oct 21stSan  Diego  ASP.NET Meeting Oct 21st
San Diego ASP.NET Meeting Oct 21stWoody Pewitt
 
2008 - TechDays PT: Building Software + Services with Volta
2008 - TechDays PT: Building Software + Services with Volta2008 - TechDays PT: Building Software + Services with Volta
2008 - TechDays PT: Building Software + Services with VoltaDaniel Fisher
 
Intro to VS 2010 & .Net 4.0
Intro to VS 2010 & .Net 4.0Intro to VS 2010 & .Net 4.0
Intro to VS 2010 & .Net 4.0Clint Edmonson
 

Similar to MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers (20)

Vb essentials
Vb essentialsVb essentials
Vb essentials
 
A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010
 
Visual Studio .NET2010
Visual Studio .NET2010Visual Studio .NET2010
Visual Studio .NET2010
 
Overview of VS2010 and .NET 4.0
Overview of VS2010 and .NET 4.0Overview of VS2010 and .NET 4.0
Overview of VS2010 and .NET 4.0
 
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
 
Whidbey old
Whidbey old Whidbey old
Whidbey old
 
Visual Studio 2010 and .NET 4.0 Overview
Visual Studio 2010 and .NET 4.0 OverviewVisual Studio 2010 and .NET 4.0 Overview
Visual Studio 2010 and .NET 4.0 Overview
 
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2
 
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
 
Lap around .net 4
Lap around .net 4Lap around .net 4
Lap around .net 4
 
Whats New In 2010 (Msdn & Visual Studio)
Whats New In 2010 (Msdn & Visual Studio)Whats New In 2010 (Msdn & Visual Studio)
Whats New In 2010 (Msdn & Visual Studio)
 
Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02
 
Data Driven WPF and Silverlight Applications
Data Driven WPF and Silverlight ApplicationsData Driven WPF and Silverlight Applications
Data Driven WPF and Silverlight Applications
 
Intro to .NET for Government Developers
Intro to .NET for Government DevelopersIntro to .NET for Government Developers
Intro to .NET for Government Developers
 
Revealing C# 5
Revealing C# 5Revealing C# 5
Revealing C# 5
 
Srgoc dotnet_new
Srgoc dotnet_newSrgoc dotnet_new
Srgoc dotnet_new
 
VS 2010 codename Rosario
VS 2010 codename RosarioVS 2010 codename Rosario
VS 2010 codename Rosario
 
San Diego ASP.NET Meeting Oct 21st
San  Diego  ASP.NET Meeting Oct 21stSan  Diego  ASP.NET Meeting Oct 21st
San Diego ASP.NET Meeting Oct 21st
 
2008 - TechDays PT: Building Software + Services with Volta
2008 - TechDays PT: Building Software + Services with Volta2008 - TechDays PT: Building Software + Services with Volta
2008 - TechDays PT: Building Software + Services with Volta
 
Intro to VS 2010 & .Net 4.0
Intro to VS 2010 & .Net 4.0Intro to VS 2010 & .Net 4.0
Intro to VS 2010 & .Net 4.0
 

More from Dave Bost

Developing for Windows Phone 8 and Windows 8
Developing for Windows Phone 8 and Windows 8Developing for Windows Phone 8 and Windows 8
Developing for Windows Phone 8 and Windows 8Dave Bost
 
Introducing Windows Phone 8 Development
Introducing Windows Phone 8 DevelopmentIntroducing Windows Phone 8 Development
Introducing Windows Phone 8 DevelopmentDave Bost
 
Monetizing Your Windows Phone App
Monetizing Your Windows Phone AppMonetizing Your Windows Phone App
Monetizing Your Windows Phone AppDave Bost
 
Live Tiles and Notifications in Windows Phone
Live Tiles and Notifications in Windows PhoneLive Tiles and Notifications in Windows Phone
Live Tiles and Notifications in Windows PhoneDave Bost
 
Introduction to Silverlight for Windows Phone
Introduction to Silverlight for Windows PhoneIntroduction to Silverlight for Windows Phone
Introduction to Silverlight for Windows PhoneDave Bost
 
Windows Phone Application Platform
Windows Phone Application PlatformWindows Phone Application Platform
Windows Phone Application PlatformDave Bost
 
Microsoft+PHP: Make Web Not War
Microsoft+PHP: Make Web Not WarMicrosoft+PHP: Make Web Not War
Microsoft+PHP: Make Web Not WarDave Bost
 
The Windows Azure Platform (MSDN Events Series)
The Windows Azure Platform (MSDN Events Series)The Windows Azure Platform (MSDN Events Series)
The Windows Azure Platform (MSDN Events Series)Dave Bost
 
Azure - The Next Frontier
Azure - The Next FrontierAzure - The Next Frontier
Azure - The Next FrontierDave Bost
 
Internet Explorer 8 Developer Overview
Internet Explorer 8 Developer OverviewInternet Explorer 8 Developer Overview
Internet Explorer 8 Developer OverviewDave Bost
 
Windows 7 Developer Overview
Windows 7 Developer OverviewWindows 7 Developer Overview
Windows 7 Developer OverviewDave Bost
 
Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...
Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...
Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...Dave Bost
 
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)Dave Bost
 
Silverlight 2
Silverlight 2Silverlight 2
Silverlight 2Dave Bost
 
Building Applications for SQL Server 2008
Building Applications for SQL Server 2008Building Applications for SQL Server 2008
Building Applications for SQL Server 2008Dave Bost
 
A Lap Around Windows Azure
A Lap Around Windows AzureA Lap Around Windows Azure
A Lap Around Windows AzureDave Bost
 
WPF Unleashed: Building Application with Visual Studio 2008 SP1
WPF Unleashed: Building Application with Visual Studio 2008 SP1WPF Unleashed: Building Application with Visual Studio 2008 SP1
WPF Unleashed: Building Application with Visual Studio 2008 SP1Dave Bost
 
MSDN Unleashed: WPF Demystified
MSDN Unleashed: WPF DemystifiedMSDN Unleashed: WPF Demystified
MSDN Unleashed: WPF DemystifiedDave Bost
 
A Tour of CodePlex
A Tour of CodePlexA Tour of CodePlex
A Tour of CodePlexDave Bost
 
WPF Applications, It's all about XAML these days
WPF Applications, It's all about XAML these daysWPF Applications, It's all about XAML these days
WPF Applications, It's all about XAML these daysDave Bost
 

More from Dave Bost (20)

Developing for Windows Phone 8 and Windows 8
Developing for Windows Phone 8 and Windows 8Developing for Windows Phone 8 and Windows 8
Developing for Windows Phone 8 and Windows 8
 
Introducing Windows Phone 8 Development
Introducing Windows Phone 8 DevelopmentIntroducing Windows Phone 8 Development
Introducing Windows Phone 8 Development
 
Monetizing Your Windows Phone App
Monetizing Your Windows Phone AppMonetizing Your Windows Phone App
Monetizing Your Windows Phone App
 
Live Tiles and Notifications in Windows Phone
Live Tiles and Notifications in Windows PhoneLive Tiles and Notifications in Windows Phone
Live Tiles and Notifications in Windows Phone
 
Introduction to Silverlight for Windows Phone
Introduction to Silverlight for Windows PhoneIntroduction to Silverlight for Windows Phone
Introduction to Silverlight for Windows Phone
 
Windows Phone Application Platform
Windows Phone Application PlatformWindows Phone Application Platform
Windows Phone Application Platform
 
Microsoft+PHP: Make Web Not War
Microsoft+PHP: Make Web Not WarMicrosoft+PHP: Make Web Not War
Microsoft+PHP: Make Web Not War
 
The Windows Azure Platform (MSDN Events Series)
The Windows Azure Platform (MSDN Events Series)The Windows Azure Platform (MSDN Events Series)
The Windows Azure Platform (MSDN Events Series)
 
Azure - The Next Frontier
Azure - The Next FrontierAzure - The Next Frontier
Azure - The Next Frontier
 
Internet Explorer 8 Developer Overview
Internet Explorer 8 Developer OverviewInternet Explorer 8 Developer Overview
Internet Explorer 8 Developer Overview
 
Windows 7 Developer Overview
Windows 7 Developer OverviewWindows 7 Developer Overview
Windows 7 Developer Overview
 
Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...
Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...
Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...
 
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
 
Silverlight 2
Silverlight 2Silverlight 2
Silverlight 2
 
Building Applications for SQL Server 2008
Building Applications for SQL Server 2008Building Applications for SQL Server 2008
Building Applications for SQL Server 2008
 
A Lap Around Windows Azure
A Lap Around Windows AzureA Lap Around Windows Azure
A Lap Around Windows Azure
 
WPF Unleashed: Building Application with Visual Studio 2008 SP1
WPF Unleashed: Building Application with Visual Studio 2008 SP1WPF Unleashed: Building Application with Visual Studio 2008 SP1
WPF Unleashed: Building Application with Visual Studio 2008 SP1
 
MSDN Unleashed: WPF Demystified
MSDN Unleashed: WPF DemystifiedMSDN Unleashed: WPF Demystified
MSDN Unleashed: WPF Demystified
 
A Tour of CodePlex
A Tour of CodePlexA Tour of CodePlex
A Tour of CodePlex
 
WPF Applications, It's all about XAML these days
WPF Applications, It's all about XAML these daysWPF Applications, It's all about XAML these days
WPF Applications, It's all about XAML these days
 

Recently uploaded

Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsYoss Cohen
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessWSO2
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 

Recently uploaded (20)

Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with Platformless
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 

MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers

  • 1.
  • 2. What’s New in .NET 4.0
  • 3.
  • 8. get on with it…
  • 10. Huge List of New Features! Breakpoint Labeling Breakpoint Searching Breakpoint Import/Export Dynamic Data Tooling WPF Tree Visualizer Call Hierarchy Improved WPF Tooling Historical Debugging Mini-Dump Debugging Quick Search Better Multi-Monitor Support Highlight References Parallel Stacks Window Parallel Tasks Window Document Map Margin Generate From Usage Concurrency Profiler Inline Call Tree Extensible Test Runner MVC Tooling Web Deploy JQuery Intellisense SharePoint Tooling HTML Snippets Web.config Transformation Click-Once Enhancements for Microsoft Office
  • 11. Overview General Improvements Debugging Parallelism Web Extensibility
  • 13. Highlighting References CTRL+SHIFT+DOWN ARROW (forward) CTRL+SHIFT+UP ARROW (reverse) Automatic highlighting of a symbol Can be used with declarations, references, and many other symbols
  • 14. Navigate To CTRL + , Provides search-as-you-type support for symbols Enables quick searching based on case usage
  • 15. Docking Windows New Guide Diamond Windows can be docked anywhere Can now pull document windows outside the IDE
  • 16. Call Hierarchy (C# only) CTRL + K, T Used to see calls to and from a method Great way to see calls at design time
  • 17. Zoom CTRL + Mouse Wheel New feature that enhances the size of your code Very useful for pair programming (or similar scenarios)
  • 18. Generate from Usage Used to automatically create stub code Enables you to use classes and members before you define them
  • 19. Intellisense Suggestion Mode CTRL + ALT + SPACE Used when classes and members are used before they are defined Helps to reduce situations where IntelliSense inserts unintended text into the editor
  • 22. Breakpoints Can add labels to breakpoints All breakpoints are now searchable Import / Export now available
  • 24. Threading Completely redesigned threading window Now provides filtering, call-stack searching and expansion, and grouping New columns added: Affinity masks Process names Managed IDs
  • 25. Dumps You can save a dump file and debug it later, either on the build computer or on another computer that has the source files and debugging symbols Can read dump files that contain information about managed code, unmanaged code, or a mixture of both
  • 26. Parallel Tasks and Stacks Used to visualize and debug parallel code that is written in C++, C#, or Visual Basic Using the Parallel Stacks window, you can view multiple call stacks at the same time in a single view Parallel Tasks allow you to see multiple tasks and the corresponding status of those tasks
  • 28. Web
  • 29. Code Snippets Snippets are now available in web applications Two major contextual areas: JavaScript HTML
  • 32. Web.config Transforms You can create configuration file transforms to modify your project's Web.config file to work with various deployment environments http://blogs.msdn.com/webdevtools
  • 33. One-Click Web Deployment With Visual Studio 2010, MSDeploy is integrated directly into Visual Studio Once you have your profiles configured, you can easily deploy to a given environment with a single click
  • 34. Web
  • 36. The Visual Studio Gallery http://visualstudiogallery.msdn.microsoft.com
  • 37. Making Your Extensions http://msdn.microsoft.com/en-us/vsx/default.aspx
  • 39. Resources What’s New in Visual Studio 2010http://msdn.microsoft.com/en-us/library/bb386063(VS.100).aspx Visual Studio on MSDNhttp://msdn.microsoft.com/vstudio Visual Studio 2010 Tips and Trickshttp://blogs.msdn.com/zainnab
  • 41. What’s New in the.NET Framework 4.0
  • 42. From There to Here… SP1 3.5 3.0 .NET 1.0 .NET 1.1 .NET 2.0 .NET 4 2002 2003 2008 CTP! 2005-08 CLR 1.0 CLR 1.1 CLR 2.0 CLR 4
  • 43. .NET Framework Architecture WPF Win Forms DLR ASP.NET WCF And more! LINQ Base Class Libraries Common Language Runtime JIT & NGEN Garbage Collector Security Model Exception Handling Loader & Binder
  • 44. Overview Client Profile Visualization Data Programming Languages Common Language Runtime (CLR) Base Class Libraries (BCL) Web
  • 46. Client Profile Subset of the full .NET Framework  Leveraged for faster deployments Two Sections Client Profile Extended Streamlined pieces of Windows Presentation Foundation (WPF) Windows Forms Windows Communication Foundation (WCF) ClickOnce
  • 48. Windows Presentation Foundation(WPF) New Controls DataGrid Calendar DatePicker Visual State Manager Touch and Manipulation Text
  • 50. Data
  • 52. Model-First Existing Database Generated Entity Data Model Database First (v1) Generated Database Entity Data Model Model First (v2)
  • 54. POCO Class Definition Everything Navigation Property Definition Scalar Property Definition
  • 55. Deferred / Lazy Loading Explicit Deferred / lazy
  • 58. Visual Basic Auto-Implemented Properties Shortened syntax that enables you to quickly specify a property of a class without having to write code Collection Initializer Shortened syntax that enables you to create a collection and populate it with an initial set of values Implicit Line Continuation Enables you to continue a statement on the next consecutive line without using the underscore character Public Property Owner As String = "DefaultName" Function AddStuff( ByValfirst As Integer, ByValsecond As Integer ) As Integer Returnfirst + second End Function Public PropertyItems As New List(Of String)= {“M“, “T“, “W“}
  • 59. C# Dynamic Type Operations that contain expressions of type dynamic are not resolved or type checked by the compiler. The compiler packages together information about the operation, and that information is later used to evaluate the operation at run time Optional and Named Parameters Named arguments enable you to specify an argument for a particular parameter by associating the argument with the parameter's name rather than with the parameter's position in the parameter list. Optional arguments enable you to omit arguments for some parameters. Both techniques can be used with methods, indexers, constructors, and delegates.
  • 60. C#: - dynamic keyword - named and optional parameters
  • 61. F# IDE support for F# Interactive F# for prototyping code Asynchronous constructs Parallel constructs Immutable data types
  • 63. Existing Side-By-Side (SxS) 2.0 add-in 3.0 add-in 3.5 add-in 1.1 add-in 3.5 .NET 1.1 3.0 .NET 2.0 Host Process (i.e. Outlook)
  • 64. In-Process Side-By-Side (SxS) 2.0 add-in 3.0 add-in 3.5 add-in 4.0 add-in 3.5 .NET 4.0 3.0 .NET 2.0 Host Process (i.e. Outlook)
  • 66.
  • 68. System.Threading.Tasks// Sequential foreach (var item in sourceCollection) { Process(item); } // Parallel Parallel.ForEach (sourceCollection, item => Process(item));
  • 69. New Sync Primitives in .NET 4 Thread-safe, scalable collections IProducerConsumerCollection<T> ConcurrentQueue<T> ConcurrentStack<T> ConcurrentBag<T> ConcurrentDictionary<TKey,TValue> Phases and work exchange Barrier BlockingCollection<T> CountdownEvent Partitioning {Orderable}Partitioner<T> Partitioner.Create Exception handling AggregateException Initialization Lazy<T> LazyInitializer.EnsureInitialized<T> ThreadLocal<T> Locks ManualResetEventSlim SemaphoreSlim SpinLock SpinWait Cancellation CancellationToken{Source} ManyCore: http://microoftpdc.com/Sessions/P09-09 (50:00)
  • 70. Parallelize For Loops Control flow is a primary source of work Parallelizable when iterations are (or can be made) independent Synchronous All work quiesces, regularly or exceptionally Lots of knobs Cancelation, breaking, task-local state, custom partitioning, scheduling, degree of parallelism foreach(var item in data) { work(item); } for (int i = 0; i < n; i++) { work(i); } StatementA(); StatementB; StatementC(); Parallel.ForEach(data, item=> { work(item); }); Parallel.For(0, n, i=> { work(i); }); Parallel.Invoke( () => StatementA(), () => StatementB, () => StatementC()); ManyCore: http://microsoftpdc.com/Sessions/P09-09
  • 71.
  • 72. Extension methods for the IParallelEnumerable interface
  • 73. Additional operators for parallel operationsfrom n in names.AsParallel().WithDegreeOfParallelism(ProcessorsToUse.Value) where n.Name.Equals(queryInfo.Name, StringComparison.InvariantCultureIgnoreCase) && n.State == queryInfo.State && n.Year >= yearStart && n.Year <= yearEnd orderbyn.Year ascending select n;
  • 75. Design By Contract System.Diagnostics.Contracts Code Contracts introduce a way to specify contractual information that is not represented by a method or type’s signature alone Scenarios for using contracts include: Perform static bug finding, which enables some bugs to be found without executing the code Create guidance for automated testing tools to enhance test coverage Create a standard notation for code behavior, which provides more information for documentation public Boolean ExampleMethod(String parameter) { if (parameter == null) throw newArgumentNullException("parameter must be non-null"); } http://msdn.microsoft.com/devlabs
  • 76. Data Types BigInteger Immutable type that represents an arbitrarily large integer whose value in theory has no upper or lower bounds SortedSet<T> Provides a self-balancing tree that maintains data in sorted order after insertions, deletions, and searches
  • 77. I/O Memory-Mapped File Used to edit very large files and to create shared memory for inter-process communication Stream.CopyTo Allows you to copy the contents of one stream into another
  • 78. Web
  • 79. Model-View-Controller (MVC) Huge investment from Microsoft Alternative to WebForms Modular Architecture MVC 2.0 Integrated in .NET Framework 4.0
  • 80. ASP.NET Webforms Ability to set meta tags More control over view state Added and Updated browser definition files ASP.NET Routing The ability to persist selected rows in data controls More control over rendered HTML in the FormView and ListView controls Filtering support for data source controls
  • 81. Dynamic Data A RAD experience for quickly building a data-driven Web site Automatic validation that is based on constraints defined in the data model The ability to easily change the markup that is generated for fields in the GridView and DetailsView controls by using field templates
  • 82. Web
  • 83. Resources .NET Developer Centerhttp://msdn.microsoft.com/net Data Developer Centerhttp://msdn.microsoft.com/data Concurrency (Parallelism)http://msdn.microsoft.com/concurrency ASP.NET MVChttp://asp.net/mvc WPF and Windows Formshttp://windowsclient.net
  • 86. SharePoint 2010Enhancements New object model LINQ for SharePoint Native support for Silverlight Sandboxed Solutions External data lists
  • 87. Overview SharePoint Projects Event Receivers Deployment & Debugging Web Parts
  • 108. Resources Learn SharePoint 2010 on Channel 9http://channel9.msdn.com/learn/courses/SharePoint2010Developer/ SharePoint 2010 Developer Centerhttp://msdn.microsoft.com/SharePoint
  • 109. Dave Bost dbost@microsoft.com @davebost http://davebost.com http://ThirstyDeveloper.com
  • 110. © 2008 Microsoft Corporation. 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.