Smartere devices mit visual studio 2008 und dem net compact framework 3 5 l.jpg
This presentation is the property of its rightful owner.
Sponsored Links
1 / 59

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


  • 128 Views
  • Uploaded on
  • Presentation posted in: General

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

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Smartere devices mit visual studio 2008 und dem net compact framework 3 5 l.jpg

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

Dr. Frank Prengel

Embedded Evangelist

Microsoft Deutschland GmbH

DEVICES


Agenda l.jpg

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


Wussten sie schon l.jpg

Wussten Sie schon…?

The world champion record is held by Mikko Lampi. He threw 94,97 metres in 2005.


Mobile l sungen im trend l.jpg

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


Enterprise ready mobility l.jpg

Enterprise Ready Mobility


Der werkzeugkasten l.jpg

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


Introducing l.jpg

Introducing…


Vorweg wermutstropfen l.jpg

Vorweg: Wermutstropfen 

… oder: Entdecke die Unmöglichkeiten

  • Device-Entwicklung mit VS 2008 erst ab Professional Edition


Vorweg wermutstropfen10 l.jpg

Vorweg: Wermutstropfen 

… oder: Entdecke die Unmöglichkeiten

  • Kein Hosting von Platform Builder 6.0 für Windows Embedded CE 6.0


Vorweg wermutstropfen11 l.jpg

Vorweg: Wermutstropfen 

… oder: Entdecke die Unmöglichkeiten

  • Keine Templates & Designer für ASP.NET Mobile Web Sites


Slide12 l.jpg


Neu in visual studio 2008 l.jpg

Neu in Visual Studio 2008


Vs 2008 for devices l.jpg

{VS 2008 for Devices}

Demo


Unit testing for devices l.jpg

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


Testausf hrung l.jpg

Testausführung

  • … auf verschiedenen Geräten oder Emulatoren möglich durch Editieren der Konfiguration


Testausf hrung was l uft l.jpg

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


Was geht nicht l.jpg

Was geht nicht?

  • Nicht unterstützt sind

    • Code Coverage

    • Performance Session


Device testing l.jpg

{Device Testing }

Demo


Erinnerung ger tesicherheit l.jpg

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


Slide21 l.jpg

Certificate

Application

Authentication

Certificate Stores

Security configuration

User prompt

Permission(Privileged/Normal/Blocked)


Ger tesicherheitsmanagement l.jpg

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


Ger teverwaltung l.jpg

{Geräteverwaltung }

Demo


Managed corecon framework l.jpg

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


Device emulator 3 0 l.jpg

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


Slide26 l.jpg

3.5


Versionen und schwerpunkte l.jpg

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


Net compact framework 3 5 l.jpg

.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


Netcf verteilte anwendungen l.jpg

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


Wcf im netcf 3 5 l.jpg

WCF im NETCF 3.5

Desktop (>10 MB)

Device (< 1 MB)

Endpoints,

Contracts,

Config files,

etc…

Messages,

Bindings,

Transports


Wcf im netcf 3 5 features l.jpg

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


Occasional connectivity grundproblem mobiler anwendungen l.jpg

"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")


Die l sung l.jpg

Die Lösung?


Store and forward messaging l.jpg

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


Adressschema l.jpg

Scheme

Channel Name

Separator

Distribution list

Adressschema

Application 3

Application 1

[email protected]

Application 4

Application 2

net.mail:[email protected]


Store forward l.jpg

{Store & Forward }

Demo


Store forward37 l.jpg

{Store & Forward }

Demo

http://blogs.msdn.com/frankpr

http://www.techfiles.de/frankpr/WCFCompact.wmv


Linq im netcf 3 5 l.jpg

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


Linq to objects l.jpg

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);

}

}


Xml vor linq d h dom l.jpg

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>


Linq to xml l.jpg

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>


Neue apis l.jpg

Neue APIs

  • Sie haben sich gewünscht:

    • Kompression

    • Client-Side-Zertifikate

    • Sound

    • Windows Forms-Verbesserungen

    • Plattform-Identifikation


Bsp plattform id l.jpg

Bsp.: Plattform-ID

using Microsoft.WindowsCE.Forms;

textBox1.Text = SystemSettings.Platform.ToString();


Netcf 3 5 power toys l.jpg

NETCF 3.5 Power Toys


Netcf 3 5 power toys45 l.jpg

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


Power toys l.jpg

{Power Toys }

Demo


Slide48 l.jpg

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


Neu in ssce 3 5 l.jpg

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)


Upgrade 3 1 3 5 l.jpg

Upgrade 3.1  3.5


Neue t sql statements l.jpg

Neue T-SQL-Statements

  • Nested Query in SELECT FROM

  • CROSS APPLY & OUTER APPLY

  • CAST

  • TOP

  • SET IDENTITY INSERT


Slide52 l.jpg


Zusammenfassung l.jpg

Zusammenfassung

  • Visual Studio 2008 bringt kleine und große Neuerungen

    • … und (fast) alle Features von VS 2005

  • .NET Compact Framework 3.5 vereinfacht

    • OCS-Lösungen ("store and forward" WCF)

    • Datenzugriff (LINQ)

    • Debugging & Profiling (Power Toys)

  • SQL Server Compact Edition 3.5 ohne umwälzende Neuerungen

  • Fazit: Device-Entwicklung wird leichter!


Literatur l.jpg

Literatur

A. Wigley, D. Moth, P. Foot:Microsoft MobileDevelopment Handbook

http://www.microsoft.com/mspress/books/10294.aspx


Literatur55 l.jpg

Literatur

Rob Tiffany:Windows MobileData Synchronizationwith SQL Server 2005and SQL Server Compact 3.1

http://blogs.msdn.com/robtiffany/


Literatur56 l.jpg

Literatur

Douglas Boling:Programming Windows® Embedded CE 6.0Developer Reference, Fourth Edition

http://www.microsoft.com/mspress/books/11064.aspx


Noch fragen l.jpg

Noch Fragen?

?


Vielen dank l.jpg

Vielen Dank!

http://blogs.msdn.com/frankpr


Slide59 l.jpg

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


  • Login