1 / 59

Smartere Devices mit Visual Studio 2008 und dem .NET Compact Framework 3.5

. Smartere Devices mit Visual Studio 2008 und dem .NET Compact Framework 3.5. Dr. Frank Prengel Embedded Evangelist Microsoft Deutschland GmbH. DEVICES. Agenda. Markt & Infrastruktur Deviceentwicklung & Microsoft: Was bisher passierte Visual Studio 2008 for Devices Wermutstropfen

channer
Download Presentation

Smartere Devices mit Visual Studio 2008 und dem .NET Compact Framework 3.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. Smartere Devices mit Visual Studio 2008 und dem .NET Compact Framework 3.5 Dr. Frank Prengel Embedded Evangelist Microsoft Deutschland GmbH DEVICES

  2. Agenda • Markt & Infrastruktur • Deviceentwicklung & Microsoft: Was bisher passierte • Visual Studio 2008 for Devices • Wermutstropfen • Neue Möglichkeiten • .NET Compact Framework 3.5 • SQL Server Compact Edition 3.5

  3. Wussten Sie schon…? The world champion record is held by Mikko Lampi. He threw 94,97 metres in 2005.

  4. 34.1%ConvergedMobile Phones 18.6%Mobile PCs 5.8%Mobile Phones 3.9%Desktop PCs Mobile Lösungen im Trend 35 30 25 20 15 10 5 0 YOY % shipping growth 2006-2010 SOURCE: Gartner Dataquest, and IDC 2006

  5. Enterprise Ready Mobility

  6. Der Werkzeugkasten Managed &Native! Desktop Parity, Designers, Data Device Emulator 1.0 &2.0* .NET CF Framework 1.0 &2.0 Microsoft Windows CE 5.0 &6.0 Smartphone &Pocket PC 2003, Windows Mobile 5.0* Windows Mobile 6* SQL Server 2005 Mobile Nur Native Windows CE 4.x, 5.0 Smartphone &PPC 2003 x86 Emulator Native &Managed Device Emulator 3.0 Security Aware IDE / Unit Testing Windows CE 5.0 and CE 6.0 Windows Mobile 2003 Smartphone** &Pocket PC (**Nur Native) Windows Mobile 5.0 Smartphone Windows Mobile 5.0 Pocket PC Windows Mobile 6Professional* Windows Mobile 6 Standard* .NET Compact Framework 2.0 &3.5 SQL Server Compact Edition 3.5 Nur Managed Windows CE 4.2 .NET Compact Framework 1.0 Smartphone &Pocket PC 2003 eVB, eVC Windows CE 3.0 * separater Download

  7. Introducing…

  8. Vorweg: Wermutstropfen  … oder: Entdecke die Unmöglichkeiten • Device-Entwicklung mit VS 2008 erst ab Professional Edition  

  9. Vorweg: Wermutstropfen  … oder: Entdecke die Unmöglichkeiten • Kein Hosting von Platform Builder 6.0 für Windows Embedded CE 6.0 

  10. Vorweg: Wermutstropfen  … oder: Entdecke die Unmöglichkeiten • Keine Templates & Designer für ASP.NET Mobile Web Sites 

  11. Neu in Visual Studio 2008

  12. {VS 2008 for Devices} Demo

  13. Unit Testing for Devices • Unit-Test-Unterstützung für NETCF-Anwendungen • Gleiche "Experience" wie bei Desktop-Anwendungen • Nahtlose Integration mit Team System und Team Foundation Server • Einfaches Testen für diverse Konfigurationsszenarien • Unterstützt Testausführung von der Kommandozeile

  14. Testausführung • … auf verschiedenen Geräten oder Emulatoren möglich durch Editieren der Konfiguration

  15. Testausführung: Was läuft? • Hostadapter für Smart Devices klinkt sich in die Hostadapter-Architektur der Testing-Tools ein • Kopiert (binäre) Dateien auf Device/Emulator • Startet SmartDeviceTestHost.exe auf dem Device/Emulator – Tests werden ausgeführt und Resultate an VS auf dem Desktop kommuniziert • Am Schluss werden Log-Dateien zurückkopiert

  16. Was geht nicht? • Nicht unterstützt sind • Code Coverage • Performance Session 

  17. {Device Testing } Demo

  18. Erinnerung: Gerätesicherheit • "Security through identity" • Zertifikate: X.509 identifiziert den Hersteller • Mobile2Market • Privilegien: unsigned, unprivileged, privileged • Ausführung: normal, trusted • Start: normal, User Prompt, verhindert • Konfigurationen: • One-Tier  Pocket PC • Two-Tier  Smartphone

  19. Certificate Application Authentication Certificate Stores Security configuration User prompt Permission(Privileged/Normal/Blocked)

  20. Gerätesicherheitsmanagement • Konfiguration der Gerätesicherheit (Device Configuration Manager) • Sicherheitsrichtlinien überprüfen und setzen • Sicherheitseinstellungen exportieren • Eigene Sicherheitsrichtlinien erstellen • Zertifikatsverwaltung auf dem Gerät (Device Certificate Manager) • Zertifikate einsehen • Zertifikate hinzufügen oder entfernen

  21. {Geräteverwaltung } Demo

  22. Managed CoreCon Framework • Basiert auf existierendem Core Connectivity Framework • Wird intern von MS-eigenen Tools verwendet (z.B. Unit Testing) • Macht das Erstellen eigener Remote-Tools leicht • Referenz hinzufügen auf: • Microsoft.Smartdevice.Connectivity.dll

  23. Device Emulator 3.0 • Verfügbar mit Visual Studio 2008 • Evolutionäre Weiterentwicklung von Version 2.0 • Verbesserungen • Unterstützung für Automatisierung (COM) • Zugriff auf Interfaces über VBScript • Einfaches Hinzufügen eigener Images im Device Emulator Manager • XML-File zur Konfiguration von Emulator-Instanzen

  24. 3.5

  25. Versionen und Schwerpunkte • .NET für Devices • Performance • Features • Tools • Verteilte Anwendungen • Mobile Daten 2002 2003 2004 2005 2006 2007 XNA 1.0 SP1 1.0 1.0 SP2 1.0 SP3 2.0 2.0 SP1 2.0 SP2 3.5 • Windows Communication Foundation • Language Integrated Query • CLR Profiler • Smartphone • Landscape • Autoscroll • Performance • Generics • COM Interop • Direct3D • Headless • Windows CE 4.2 • Remote Performance Monitor

  26. .NET Compact Framework 3.5 • WCF "Light" • incl. Store-And-Forward Channel • LINQ (XML, Objekte, DataSet) • Neues Tool: CLR Profiler • Kompression • Client-Side-Zertifikate • Sound API • Diverse Verbesserungen & Fixes

  27. NETCF + verteilte Anwendungen • Kommunikation für Online-/Offline-Situationen einfacher implementieren • Server soll Kommunikation mit Geräten initiieren • Anwendungen sollen von Gerät zu Gerät kommunizieren können (P2P) • WCF für die mobile Welt

  28. WCF im NETCF 3.5 Desktop (>10 MB) Device (< 1 MB) Endpoints, Contracts, Config files, etc… Messages, Bindings, Transports

  29. WCF im NETCF 3.5: Features Protocol Encoding Security Reliability Transport Text WS-* HTTP WS-* WS-* Text WS-* HTTP Exchange Custom Custom Custom Custom Custom MTOM TCP Binary Pipes MSMQ http://blogs.msdn.com/andrewarnottms/archive/2007/08/21/The-WCF-subset-supported-by-NetCF.aspx

  30. "Occasional Connectivity"Grundproblem mobiler Anwendungen • Adresse und Identität • IP-Adresse des Mobilgeräts kann wechseln und (serverseitig) nicht erkannt werden • Dynamic DNS und IPv6 noch nicht universell verfügbar • TCP/HTTP nur zum "Herausrufen" vom Gerät aus • Echtes P2P nicht machbar • QoS (intermittente Verbindungen) • Anwendungen müssen explizit Offline-Status voraussetzen • Benötigt wird eine Möglichkeit, Nachrichten aufzubewahren und erst bei Verbindung zu versenden ("store and forward")

  31. Die Lösung?

  32. Store And Forward Messaging • "WCF über Email" • Email-Infrastruktur löst Adressierbarkeits- und Erreichbarkeitsprobleme • Konsistentes Programmiermodell für Windows Mobile und Windows auf PCs • Nutzt Erweiterbarkeit der WCF-Architektur • Spezieller "store-and-forward"-Transportkanal über Email • Nutzt ActiveSync “Always-Up-To-Date”-Funktion ("Push Email") und Exchange 2007 Web Services

  33. Scheme Channel Name Separator Distribution list Adressschema Application 3 Application 1 john@microsoft.com Application 4 Application 2 net.mail://sales/orderschannel#service@company.com

  34. {Store & Forward } Demo

  35. {Store & Forward } Demo http://blogs.msdn.com/frankpr http://www.techfiles.de/frankpr/WCFCompact.wmv

  36. LINQ im NETCF 3.5 • Kompatible Teilmenge der Funktionalität im .NET Framework 3.5 • LINQ to Objects • LINQ to XML • LINQ to DataSet, DataTable • Nicht verfügbar: • LINQ to SQL • Expression Trees

  37. LINQ to Objects BURKE DAVID FRANK using System; using System.Linq; using System.Collections.Generic; class app { static void Main() { string[] names = { "Burke", "Connor", "Frank", "Everett", "Albert", "George", "Harris", "David" }; IEnumerable<string> expr = from s in names wheres.Length == 5 orderby s selects.ToUpper(); foreach (string item in expr) Console.WriteLine(item); } }

  38. XML: Vor LINQ (d.h. DOM) XmlDocument doc = new XmlDocument(); XmlElement books = doc.CreateElement("Books"); XmlElement book = doc.CreateElement("Book"); XmlElement title = doc.CreateElement("Title"); XmlElement price = doc.CreateElement("Price"); doc.AppendChild(books); books.AppendChild(book); book.AppendChild(title); book.AppendChild(price); title.AppendChild( doc.CreateTextNode("Short DOM reference, vol.5")); price.AppendChild(doc.CreateTextNode("99.95")); doc.Save(“MyBooks.xml”); <Books> <Book> <Title>Short DOM reference, vol.5</Title> <Price>99.95</Price> </Book> </Books>

  39. LINQ to XML XDocument doc = new XDocument( new XElement("Books", new XElement("Book", new XElement("Title", "What to do in spare time freed up from XML programming."), new XElement("Price", "19.95") ) ) ) doc.Save(“MyBooks.xml”); <Books> <Book> <Title>What to do in spare time freed up from XML programming.</Title> <Price>19.95</Price> </Book> </Books>

  40. Neue APIs • Sie haben sich gewünscht: • Kompression • Client-Side-Zertifikate • Sound • Windows Forms-Verbesserungen • Plattform-Identifikation

  41. Bsp.: Plattform-ID using Microsoft.WindowsCE.Forms; … textBox1.Text = SystemSettings.Platform.ToString();

  42. NETCF 3.5 Power Toys

  43. NETCF 3.5 Power Toys • Remote Performance Monitor, GC Heap Viewer (Update) • NETCF CLR Profiler • App Configuration Tool (NetCFcfg.exe) • NETCF ServiceModel Metadata Tool (netcfsvcutil.exe) • Remote Logging Configuration Tool • NETCF Network Log Viewer

  44. {Power Toys } Demo

  45. Funktionserweiterungen nach Kundenfeedback ‘01 ‘03 ‘05 ‘06 ‘07 • Synchronisierung mitSync Services for ADO.NET SQL Server Compact 3.5 SQL Server Compact 3.1 • Alle Desktop-Szenarien möglich SQL Server Mobile 3.0 • Tablet PC-Unterstützung • Interne Verwendung in Windows: Vista * SQL Server CE 2.0 • .NET Compact Framework unterstützt SQL Server CE 1.0 • Embedded-DB für Devices – eVC, eVB

  46. Neu in SSCE 3.5 • Neues Dateiformat • Konvertierung notwendig • VS2008 / SQL2008 Mgmt Studio als Tool • PK/FK-Auswahl im Table Designer • timestamp (rowversion)-Datentyp • Neue T-SQL-Statements • Stärkere Verschlüsselung • (Nur für Desktop: LINQ to SQL, Sync Services)

  47. Upgrade 3.1  3.5

More Related