Visual Studio 2005 Johan Lindfors Dag König, SweNUG, KnowIT
Visual Studio 2005 Smarta klienter WinForms, ClickOnce, Office, mobilitet,
Innehåll Office Mobilitet .NET Compact Framework 2.0 SQL Mobile Smarta klienter med Visual Studio 2005 Windows Forms 2.0 ClickOnce
Visual Studio Tools for Office Bakgrund Makron och funktioner VBA COM Addins
Visual Studio Tools for Office Programmeringsmodellen tidigare Användargränssnitt och data var sammanblandade Utveckling för Office respektive Windows Forms upplevdes väldigt olika Servergenerering av Office dokument understöddes inte
Visual Studio Tools for Office Introduktion Integrerad utvecklingsmiljö Word och Excel visas inuti Visual Studio Stöd för “Managed Controls” Förbättrad programmeringsmodell Skiljer på användargränssnitt och data Schema-based programming Enkelt att utveckla “Action Panes” Nya datacachningsmöjligheter “Data Island” är nåbara för servergenerering ClickOnce-distribution av kod
demo Introduktion till VSTO
Visual Studio Tools for Office Office-kontroller ”View Controls” Databinding Utökad stöd för händelser (events) ”Managed Controls” Wrappers för de gamla Officekontrollerna
Visual Studio Tools for Office View Controls - Excel NamedRange Utökar Excels objekt Range och Name ListObject Utökar Excels objekt List Är en DataGridkontroll Expanderas automatiskt beroende datat som den skall visa XmlMappedRange För att jobba med XML och XSD Chart
Visual Studio Tools for Office View Controls - Word Bookmark XmlNode, XmlNodes För att jobba med XML och XSD
Visual Studio Tools for Office Actions Pane Programmera mot Offices åtgärdsfönster Baserat på Windows Forms Designern för Windows Forms används för att designa utseendet Kan innehålla “User Controls” Mycket enklare att använda än SmartDoc SDK VSTO implementerar ISmartDocument Ingen XML schema mapping krävs
demo ActionPane
Visual Studio Tools for Office Smarta Etiketter (Smart Tags) Känner igen text och binder olika händelser emot dem
Visual Studio Tools for Office Data Islands Kan användas för att t.ex. spara inställningar Möjlighet att uppdatera datat utan att starta Office Detta möjliggör servergenererade dokument Hämta data från servern Skicka data till servern
demo DataIslands
Visual Studio Tools for Office Säkerhet Säkerhet i grundinställningen Baseras på kod och bevisbaserad säkerhet Dokumentet och “assemblyn” kräver Full Trust Underliggande objektmodell är ohanterad Möjligheter till bevis Signatur – “authenticode” eller SN URL eller ursprungsbaserad
.NET Compact Framework 2.0 Kompabilitet och Prestanda Kompatibel med hela.NET Framework Kompatibel med.NET CF 1.0 Side-by-side execution Förbättrad Prestanda Gemensam JIT Bättre stränghantering Förbättringar i XML stödet Förbättrad ADO.NET med SQL Mobile.NET CF 1.0.NET CF 2.0
.NET Compact Framework 2.0 Nya Kontroller DateTimePicker MonthCalendar DocumentList LinkLabel Notification Help WebBrowser
.NET Compact Framework 2.0 Smartphone Dataaccess SQL Mobile DataGridView Textbox IME switching InputModeEditor Möjlighet att ha flera menyval på vänstra knappen
.NET Compact Framework 2.0 System.Xml Namespace Förbättrad prestanda Stöd för schemavalideringar Ingen DTD stöd Xpath XmlSerialization
demo Mobila applikationer med VS 2005
.NET Compact Framework 2.0 System.Messaging Namespace Stöd för meddelandeköer Sända och ta emot meddelanden Kommunikation med applikationer utan att någon aktiv förbindelse Möjlighet att kommunicera över otillförlitliga förbindelser Finns också stöd för att administrera köerna direkt på den mobila enheten
SQL Server 2005 Mobile Edition Introduktion Integration med SQL Server 2005 SQL Server Management Studio Integration med Visual Studio 2005 Storage Engine Stödjer flera samtidigar ”connections” Radlåsning Stöd för AutoShrink Query Processor Kostnadsbaserad optimering av frågor SqlCeResultSet
SQL Server 2005 Mobile Edition Synkroniseringsförbättringar Förbättrad synkronisering Flera användare Indikation på förlopp Multipla prenumerationer i samma databas Prestanda (med SQL 2005) Partionerade grupper Markera tabeller som “Download-Only”
Windows Mobile Framtiden Pocket Outlook Object Model (POOM) Hanterad åtkomst till PIM objekt Kontakter, uppgifter, möten MAPI och SMS Skicka och ta emot epost och SMS Att ta emot SMS är ett filterbaserat system Telefoni Ringa samtal Visa logg
Pocket Outlook Lista möten using Microsoft.WindowsMobile.PocketOutlook private void ListAppointments() { myItemStore = new ItemStore(); private ListBox appListBox; appListBox.DataSource = myItemStore.Appointments.Items; appListBox.DisplayMember = "Subject"; }
private void button1_Click( object sender, System.EventArgs e) { SmsMessage sms = new SmsMessage(); sms.To.Add(new Recipient(sendTo.Text)); sms.Body = msg.Text; sms.Send(); } Hantera SMS Skicka ett meddelande
Hantera SMS Registrera en händelse rule = new MessageRule(MyRuleId, cmd, PostProcess.Delete); rule.AccountFilter = new AccountFilter( AccountField.TransportName, "SMS"); rule.MessageFilter = new MessageFilter(MessageField.Sender," "); rule.Register(); rule.RuleFired += new MessageRuleEventHandler(rule_RuleFired);
Hantera SMS Hantera en händelse private void rule_RuleFired(object sender, MessageRuleFiredEventArgs e) { if (e.Message is SmsMessage) { SmsMessage sms = (SmsMessage)e.Message; display.Text += sms.From.Address + ":\r\n" + sms.Body + "\r\n"; sendTo.Text = sms.From.Address.ToString(); }
Windows Forms 2.0 Underlätta utveckling av klientapplikationer Professionella utseenden och upplevelser Nya kontroller och förbättringar Förenkla datahantering Mindre kod Färre steg Utnyttja det som gjorts för webbutvecklare
Nya kontroller “ToolBar” och menyer (“ToolStrip”) “Splitter Container” Webbläsare “MaskedEdit” Olika “layout”-kontroller Datakontroller DataGridView (ny Grid Control) DataContainer (nu DataConnector)
Funktioner vid exekvering Konfiguration av klienten Inställningar för användaren “Read”/”Write” Inställningar för applikationen “Read Only” Asynkron komponent API för ljud Förbättrat API för utskrifter Kontroller och features från Windows XP Existerande kontroller förbättrade
demo Professionella WinForms
“ClickOnce” Utmaning: Att rulla ut klientapplikationer, arbetet påbörjades i version 1.0 och 1.1 Mål: Få utrullningen av smarta klienter att bli lika enkel som webbapplikationer “ClickOnce” Upphöjda rättigheter
Bästa från klienten och webben WebbClickOnce MSI klient Räckvidd “No Touch” utrullning Låg påverkan på systemet Installera och exekvera per användare Rik och interaktiv Åtkomst utan nätverk Integration med Windows Delade komponenter Obegränsad installation
Deklarativ installation “Application manifest” Skapas av utvecklaren Beskriver applikationen Exempel: Krav och beroenden “Deployment manifest” Skapas av administratören Beskriver applikationens installation Exempel: Vilken version ska användas
Webbsida Länk till Manifest “Deployment Manifest” 1.0 Application Manifest 1.1 Application Manifest Uppdatering via webben
Ja Nej Lagring av applikation Installerad Upp- datering Startup SHIM Min applikation Deployment Framework Service MIME.application Online Arkitekturen för uppdatering
Uppdateringsmöjligheter Vid uppstart av applikationen Om en uppdatering finns, fråga användaren Efter uppstart av appliktionen Om en uppdatering finns, fråga användaren om uppdatering ska ske vid nästa uppstart Krävd uppdatering Specificeras genom minsta krävda versionen Programmatisk uppdatering Integrera uppdateringen med applikationen
Installerar krav för applikationen .NET FX, Microsoft DirectX®, MDAC osv. Kräver administrativa rättigheter Utbyggbar arkitektur Hanterar omstarter Installerar ClickOnce applikationen efteråt Använd ClickOnce för automatiska uppdateringar Ingen automatisk uppdatering av “systemkrav” ”Bootstrapper”
demo Rulla ut applikationer med ClickOnce
Aspekter på säkerheten ClickOnce applikationer exekvererar i SEE Rättigheter baseras på ursprung Internet, Intranät eller fulla rättigheter Ibland krävs högre rättigheter Anropa ohanterad kod Anropa filsystemet och registret Använda en databas Konsumera XML WebServices
Att bestämma rättigheter Projektdesignern har en panel för säkerhet Används för att manuellt konfigurera rättigheter Verktyg för att beräkna rättigheter Beräknar de minsta behövda rättigheterna Debugga i förväntad miljö “Exception Assistant” Microsoft Intellisense förbättringar Filter som baseras på säkerhetens omfattning
Påverkan för användare I hanterade nätverk Konfigureras av administratören Utvecklaren skaffar en så kallad ”trust license” Signerar applikationen I ohanterade nätverk Användaren är administratören ”Manifest”-filerna signeras alltid
demo Säkerhet och ClickOnce
Programmatisk uppdatering Scenarios för att uppdatera applikationen Implementera menyvalet ”Uppdatera nu” Matcha klient och serverversioner Skräddarsydd logik för uppdatering Behovsbaserad uppdatering Ny namnrymd i.NET Framework 2.0 System.Deployment
Det börjar närma sig slutet... Visual Studio 2005 MSF, Team System, produktivitet, kvalitet .NET Framework 2.0 Generics, iteratorer, anonyma metoder SQL Server 2005 CLR integration, CTE, XML, säkerhet Smarta Klienter ClickOnce, Office, mobilitet
Johan Lindfors André Henriksson