was ist neu in .net 4.5?
DESCRIPTION
Referent: Hans Peter BornhauserTRANSCRIPT
![Page 1: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/1.jpg)
Was ist neu in .NET 4.5?
Hans Peter Bornhauser, Noser Engineering AG
Fachbereichsleiter .NET, Digicomp AG
1
![Page 2: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/2.jpg)
Der Referent: Hans Peter Bornhauser
Dipl. Ing ETH
Software Architect, Senior Software Engineer, Consultant and Trainer bei Noser Engineering AG in Winterthur
Fachbereichsleiter .NET bei Digicomp
12 Jahre Webentwicklung mit .NET (seit Beta 1.0)
ASP.NET Webforms und MVC
WPF und Silverlight
WCF und Entity Framework
Windows 8 Apps (search.ch, Family Trips)
div. Microsoft Zertifikate
MCPD Web + Windows
MCPD Silverlight + Azure
MCSD Web Applications .NET 4.5
MCT (Certified Trainer)
2
![Page 3: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/3.jpg)
.NET Generationen
3
Managed Code
Generics
Language Integrated Query
Dynamic + (Language Parity)
C# 5.0 + VB 11.0 Windows 8 Runtime + Asynchrony
C# 1.0 + VB 7.0
C# 2.0 + VB 8.0
C# 3.0 + VB 9.0
C# 4.0 + VB 10.0
![Page 5: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/5.jpg)
Was ist wirklich neu?
Einfache asynchrone Aufrufe (async/await)
Verbesserungen am Parallel Framework
Windows 8 Apps
XAML/C# oder HTML5/CSS3 und JavaScript
Expression Blend kann HTML und CSS, Bestandteil von Visual Studio
2012 (aber nur für Windows 8 Apps)
Portable Klassenbibliotheken (für .NET, Silverlight, Phone, XBox und
Windows 8)
Testmanager
Lightswitch integriert
Verbesserte HTML 5 / CSS / JavaScript Editoren, Page Inspector
5
![Page 6: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/6.jpg)
Was fällt weg?
Macros
Client Profile für .NET Framework
Windows Installer Projekte
Keine Unterstützung für Windows XP (.NET 4.5)
6
![Page 7: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/7.jpg)
Asynchrone Programmierung
7
![Page 8: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/8.jpg)
Async. Pattern BeginXXX / EndXXX
8
C# Visual Basic .NET
private void OnDownloadClick(object sender, EventArgs e)
{
WebRequest request = WebRequest.Create("http://www.digicomp.ch");
// Request in Hintergrundthread ausführen, Referenz als State-Parameter übergeben
request.BeginGetResponse(new AsyncCallback(GetResponseCallback), request);
}
// Callback-Methode für die abschließende Behandlung
private void GetResponseCallback(IAsyncResult asyncResult)
{
WebRequest request = (WebRequest)asyncResult.AsyncState;
WebResponse response = request.EndGetResponse(asyncResult);
string t = response.ContentType;
long n = response.ContentLength;
// Control.Invoke für Zugriff auf Steuerelemente
this.Invoke(new ShowInfoDelegate(ShowInfo), "ContentType: " + t + ", ContentLength: " + n);
}
private delegate void ShowInfoDelegate(string text);
private void ShowInfo(string text) // Hilfsmethode vom GUI-Thread ausgeführt
{
BeginXXXInfo.Text = text;
}
![Page 9: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/9.jpg)
Async. Pattern .NET 2.0
9
C# Visual Basic .NET
private void OnDownloadClick(object sender, EventArgs e)
{
// WebClient instanzieren
WebClient webClient = new WebClient();
// Eventhandler binden
webClient.DownloadStringCompleted += new
DownloadStringCompletedEventHandler(webClient_DownloadStringCompleted);
// Methode aufrufen
webClient.DownloadStringAsync(new Uri("http://www.dotnetpro.de"));
}
void webClient_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
// Der Eventhandler darf unmittelbar auf die Steuerelemente zugreifen
WebsiteContent.Text = e.Result;
![Page 10: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/10.jpg)
Asynchrone Methoden
Modell
1. Alles nach await wird in eine eigene Methode verschoben
2. Es gibt eine neue Methode DownloadStringTaskAsync, welche das
gleiche macht wie das Original, aber asynchron ist.
3. Nach dem Aufruf von DownloadStringTaskAsync wir die Methode
beendet und an den Aufrufer zurückgegeben.
4. Die 2. Hälfte der Methode wird aufgerufen, wenn der asynchrone Teil
fertig ist.
C# Visual Basic .NET
private async void OnLoadWebPageClickAsync(object sender, EventArgs e)
{
WebClient webClient = new WebClient();
WebsiteContent.Text = await webClient.DownloadStringTaskAsync("http://www.digicomp.ch");
}
![Page 11: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/11.jpg)
Web Entwickler
AntiXSS
Bundling + Minification
Web API
Web Sockets Unterstützung (nur IIS 8 und IE10), SignalR
Model Binding für WebForms (ähnlich ASP.NET MVC)
Typisiertes Data Binding
Unterstützung für mobile Devices
Page Inspector
11
![Page 12: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/12.jpg)
WPF Entwickler
Neue Controls
Ribbon (RibbonWindow / RibbonButton / RibbonGroup, ...)
Virtualizing Panel
Verbesserungen im Data Binding
Markup Extensions für Ereignisse
Verzögerte Synchronisation beim Data Binding
Bindung an statische Eigenschaften
INotifyDataErrorInfo für asynchrone Validierung auf dem Server
Verbessertes Threading
Thread Synchronisation für ObservableCollections
Erweiterungen der Dispatcher Klasse (async. Methoden)
Weak Event Pattern
Verbesserte Interoperabilität mit Windows Forms
12
![Page 13: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/13.jpg)
WCF Entwickler
Konfiguration entschlackt, Validierung und Intellisense
Unterstützung für async / await
Neue Bindings
basicHttpsBinding
udpBinding
Web API ( = webHttpBinding + MVC)
WebSockets
13
![Page 14: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/14.jpg)
Entity Framework 5/6
Open Source
Neue Datentypen: Enums, räumliche Datentypen (Geometry und
Geography)
Table-Valued Functions
Stored Procedures mit mehreren Ergebnissen
Automatisch compilierte LINQ Abfragen, Optimierung der Queries
Unterstützung für mehrere Diagramme für ein Objektmodell, Farben
Migration von Datenbanken bei Code First
Version 6 in Entwicklung
Unterstützung von Stored Procedures für Code First
Verwendung von async / await
14
![Page 15: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/15.jpg)
Windows 8 / WinRT
Entwicklung nur mit VS 2012 unter Windows 8
Ist nicht .NET, aber objektorientiertes API (COM Komponente)
Windows Runtime ersetzt Win32 für neue Anwendungen
ca. 1800 Klassen
Apps laufen nur unter Windows 8 (im Store)
Keine Migration von WPF, Silverlight oder ASP.NET
Nur Client Framework, kein Entity Framework, keine Datenbank (SQL
Light)
Kennt auch Metadaten in Form von .winmd Files
15
![Page 16: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/16.jpg)
Die nächste Version?
VS 2012 Update 3 ist RC
VS 2013 kommt noch in diesem Jahr!!!
News an der Build
16
![Page 17: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/17.jpg)
Aktuelle Digicomp-Kurse zum Thema
Entwicklung von Webapplikationen mit MVC 4 (2 Tage)
www.digicomp.ch/kurse/MVC.html
Windows 8 für WPF Entwickler (2 Tage)
HTML 5 (1 Tag) www.digicomp.ch/kurse/HT5.html
jQuery (2 Tage) www.digicomp.ch/kurse/IJQ.html
Neues in .NET 4.5 und Visual Studio 2012 (2 Tage)
www.digicomp.ch/kurse/CN5.html
17
![Page 18: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/18.jpg)
Literatur
C# 5.0 in a Nutshell Joseph & Ben Albahari
O'Reilly ISBN 978-1-449-32010-2
Async in C# 5.0 Alex Davies
O'Reilly ISBN 978-1-449-33716-2
Pro C# 5.0 and the .NET 4.5
Framework
Andrew Troelsen
Apress ISBN 978-1-4302-4233-8
Programming Windows Writing Windows 8 Apps
Charles Petzold
Microsoft Press ISBN 978-0-7356-7176-8
Programming ASP.NET MVC 4 Jess Chadwick, Todd Snyder
O’Reilly ISBN 978-1-449-32031-7
18
![Page 19: Was ist neu in .NET 4.5?](https://reader034.vdocuments.mx/reader034/viewer/2022052523/55661527d8b42a7d608b4957/html5/thumbnails/19.jpg)
Links
Visual Studio 2012 News: http://msdn.microsoft.com/en-
us/library/bb386063.aspx
.NET News http://msdn.microsoft.com/en-us/library/ms171868.aspx
Windows RT http://msdn.microsoft.com/en-us/magazine/jj651567.aspx
Kurz Videos
http://www.hanselman.com/blog/VisualStudio2012AndNETFramework
45IsRELEASEDHeres5MinuteVideosToGetYouUpToSpeedQuick.aspx
Portable Class Library http://bit.ly/NetPCL
19