Overview of Next-gen technologies Raimond Brookman IT Architect Info Support

Slides:



Advertisements
Similar presentations
Svetlin Nakov Director Training and Consulting Activities National Academy for Software Development (NASD) ASP.NET 3.5 New Features.
Advertisements

Windows Workflow Foundation
Introduction to .NET Framework
Tahir Nawaz Introduction to.NET Framework. .NET – What Is It? Software platform Language neutral In other words:.NET is not a language (Runtime and a.
DEV306 LINQ (Language Integrated Query)
Live from Redmond: WebCast Conquering XML with Visual Basic 9 Amanda Silver Lead Program Manager Visual Basic Level: Starts Easy, Finishes Advanced.
Introduction to.NET 3.0 Henrik Westergaard Hansen Academic Developer Evangelist Developer & Platform.
Go Live with.NET 3.0 Ivan Towlson, ECN Group Agenda What is.NET 3.0? Should I be considering/recommending it for current projects?
4/16/2017 9:21 AM Choosing the Right Presentation Technology: Windows Presentation Foundation ("Avalon"), Windows Forms, ASP.NET, IE, and More PRS200 Michael.
.NET Framework V3.0 Mike Taulty Developer & Platform Group Microsoft Ltd
Henrico Dolfing Business Segment Partners. Océ Document Technologies GmbH2 June, NET Framework Version 3.0.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
ASP.NET 3.5 New Features. 2 Agenda What's New in.NET Framework 3.5? Visual Studio 2008 Enhancements LINQ (Language Integrated Query) New ASP.NET Server.
C# 3.0 & LINQ Raimond Brookman – IT Architect
LinqToSharePoint SandBoxed Solution Shakir Majeed Khan
Module 13: WCF Receive Adapters. Overview Lesson 1: Introduction to WCF Receive Adapters Lesson 2: Configuring a WCF Receive Adapter Lesson 3: Using the.
Getting Started with WCF Windows Communication Foundation 4.0 Development Chapter 1.
Beth Massi Program Manager Visual Studio Community.
Paul Yuknewicz Lead Program Manager Microsoft Visual Basic DEV 319.
Powerful, modern desktops enable next generation applications Hardware acceleration brings real-time lighting, texturing and rendering Visual.
Intro to dot Net Dr. John Abraham UTPA – Fall 09 CSCI 3327.
Wrestling with Windows Workflow Foundation Simon Thurman Jeremy Stimson.
.NET, and Service Gateways Group members: Andre Tran, Priyanka Gangishetty, Irena Mao, Wileen Chiu.
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
SOA, BPM, BPEL, jBPM.
Creating Business Workflow Using SharePoint Designer 2007 Presented by Tarek Ghazali IT Technical Specialist Microsoft SQL Server MVP Microsoft SQL Server.
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
CIS 375—Web App Dev II ASP.NET 2 Introducing Web Forms.
VS.NET Syllabus By Peter Huang.
Eric Vogel Software Developer A.J. Boggs & Company.
ASP.NET The.NET Framework. The.NET Framework is Microsoft’s distributed run-time environment for creating, deploying, and using applications over the.
Meir Botner David Ben-David. Project Goal Build a messenger that allows a customer to communicate with a service provider for a fee.
CIS 375—Web App Dev II Microsoft’s.NET. 2 Introduction to.NET Steve Ballmer (January 2000): Steve Ballmer "Delivering an Internet-based platform of Next.
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Silverlight Technology. Table of Contents 1.What is Silverlight Technology? 2.Silverlight Overview. 2.1 How it works 2.2 Silverlight development tools.
Лектор: Борислава Палева. Galin Iliev MCT, MCPD, MCSD.NET LINQ to XML.
LINQ and C# 3.0 Mads Torgersen Program Manager for the C# Language Microsoft Corporation.
LINQ: It’s Not Your Father’s Data Access Denny Boynton Anheuser-Busch Companies.
The.NET Language Integrated Query Project Anders Hejlsberg TLN306 Technical Fellow Microsoft Corporation.
The Microsoft Technical Roadshow 2007 Rich Client Development in XAML Mark Johnston Developer & Platform Group Microsoft Ltd
.Net – The First Glance What Is.Net, Why Use.Net.
Introducing ASP.NET 2.0. Internet Technologies WWW Architecture Web Server Client Server Request Response Network HTTP TCP/IP PC/Mac/Unix + Browser (IE,
James Akrigg Microsoft Ltd Integrating InfoPath Forms Into Workflow Solutions And Business Processes.
Developing ASP.NET AJAX Controls with Silverlight Barry Gervin Microsoft Regional Director John Bristowe Developer Advisor, Microsoft.
A Lap Around Windows Presentation Foundation. Why hasn’t UX taken off in software? It’s Difficult! Animation 2D 3D Documents Styled Controls Video Windows.
Intro to dot Net Dr. John Abraham UTPA CSCI 3327.
C#: Future Directions in Language Innovation Anders Hejlsberg TLN307 Technical Fellow Microsoft Corporation.
ASP.NET (Active Server Page) SNU OOPSLA Lab. October 2005.
Contents : What is Silverlight? Silverlight Overview Silverlight Toolkit Overview Timeline & Packaging Silverlight V1.0 & V1.1 Properties of V1.0 Properties.
1 Välkommen till Sommarkollo Windows Presentation Foundation Per Östman ISV Developer Evangelist
Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts How to host WCF services.
.NET Framework 3.0 Windows Presentation Foundation Windows Communication Foundation Windows Workflow Foundation.
CIS 375—Web App Dev II ASP.NET 1 Getting Started.
Microsoft’s Rich Web Technology XAML,WPF and WPF/E July, 2006 John Allwright.
Dhananjay Kumar MVP-Connected System 1. WCF  Agenda What is WCF ? Why WCF? Address, Binding, Contract End Points Hosting Message Patterns Programming.
Introduction to.NET Building.NET Applications Mike Taulty Developer & Platform Group Microsoft Ltd
Ken Casada Developer Evangelist Microsoft Switzerland
A Detailed Introduction To Visual Studio.NET CRB Tech ReviewsCRB Tech Reviews introduces you to the world of Visual.
Introducing the Microsoft® .NET Framework
Part 1: Overview of LINQ Intro to LINQ Presenter: PhuongNQK.
Shanku Niyogi PRS 312 Group Program Manager Microsoft Corporation
.NET Framework 2.0 .NET Framework 3.0 .NET Framework 3.5
Välkommen till Sommarkollo 2006
Shanku Niyogi PRS 312 Group Program Manager Microsoft Corporation
Silverlight Technology
Visual Studio “Orcas” & .NET Framework v3.5
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
Mark Quirk Head of Technology Developer & Platform Group
Presentation transcript:

Overview of Next-gen technologies Raimond Brookman IT Architect Info Support

2 WWF 5 Pillars of Connected Systems WCF Infocard AD ASP.NET 2.0 Atlas / WPF LINQ WinFS

3 Agenda Introduction Windows Presentation Foundation (WPF) ASP.NET Atlas Windows Communication Foundation (WCF) Windows Workflow Foundation (WWF) C# 3.0, LINQ, DLINQ & XLINQ Q&A

4 Windows Presentation Foundation

5 User Experience Matters Consumer Software HTMLDHTMLWinFX

6 Developer Art

7 Windows Presentation Foundation BUILD THE APPLICATIONS YOU ALWAYS DREAMED OF BUILD THE APPLICATIONS YOU ALWAYS DREAMED OF

8 WPF Capabilities Media Integration Layer 2D 3D Audio Imaging Text Video Effects Composition Engine Animation Base Services XAML Accessibility Property System Input & Eventing Document Services XPS Documents Packaging Services User Interface Services Application Services Deployment Services Controls Layout Databinding

9 WPF: User Interface Services Layout & Databinding Select A Customer <ListBox Name="myListBox" Background="HoneyDew" ItemsSource="{Binding {StaticResource myDataSource}}" User Interface Services Application Services Deployment Services Controls Layout Databinding

10 Window1.xaml.csContains: Application logic Created by: Application developer Window1.xamlContains: Principal UI (controls, layout, etc.) Created by: Application developer or designer Design Experience: By hand or using a visual tool Styles.xamlContains: Application “style” (visual description of UI elements) Created by: Application designer Design Experience: By hand or using a visual tool project structure Data model, event names, element names, etc. Resource names and element types.

11 ASP.NET: Future Directions Developing Rich Web Applications With “Atlas”

12 ASP.NET “Atlas” Goals Increased productivity Fewer concepts, fewer lines of code Application and UI building blocks for common scenarios Easier to author, debug, and maintain Clean separation of content, style, behavior, and code Well integrated with design and development tools Seamlessly integrated application model Works with ASP.NET pages and server controls Allows access to ASP.NET-hosted web services and components Works everywhere – cross-browser, standards based A FRAMEWORK FOR BUILDING RICHER, MORE INTERACTIVE, MORE PERSONALIZED WEB EXPERIENCES A FRAMEWORK FOR BUILDING RICHER, MORE INTERACTIVE, MORE PERSONALIZED WEB EXPERIENCES

13 “Atlas” Architecture ‘Atlas” Client Script Library Built-in Controls and Behaviors Built-in Controls and Behaviors Script Core Base Class Library Component and UI Model Browser Compatibility “Atlas” Client Application Services Local Store Browser Integration Browser Integration ASP.NET “Atlas” Server Extensions “Atlas” Server Controls “Atlas” Server Controls ASP.NET “Atlas” Application Services “Atlas” Web Services Bridge “Atlas” Web Services Bridge ASP.NET 2.0 ASP.NET Application Services ASP.NET Application Services Page Framework And Server Controls Page Framework And Server Controls “Atlas”-enabled ASP.NET Pages “Atlas”-enabled ASP.NET-hosted Web Services (ASMX or WCF) ASP.NET-hosted Web Services (ASMX or WCF) ASP.NET “Atlas” Server “Atlas” HTML Page Page “Atlas”ServiceProxies“Atlas”ServiceProxies “Atlas” Client

14 Script-Based Type System Scenario: Script code can be ad-hoc, unmaintainable, etc. Solution: Encapsulate data and logic into classes and components Expose intuitive object model “Atlas” OOP constructs built on top of standard script constructs and techniques Namespaces Classes, Interfaces, and inheritance Properties, methods, events Private and public members Delegates Enumerations and Flags

15 API Samples var myArray = new Array(‘abc’, ‘ghi’); myArray.push(‘jkl’); myArray.splice(1, 0, ‘def’); var myObject =...; var s = ‘’; for (var name in myObject) { var value = myObject[name]; s += name + ‘ = ‘ + value + ‘\r\n’; } var myArray = new Array(‘abc’, ‘ghi’); myArray.add(‘jkl’); myArray.insert(1, ‘def’); var myObject =...; var s = ‘’; for (var name in myObject) { var value = myObject[name]; var value = myObject[name]; s += String.Format(‘{0} = {1}\r\n’, s += String.Format(‘{0} = {1}\r\n’, name, value, value.length); name, value, value.length);} var myObject = ‘...’; var sb = new Web.StringBuilder(); for (var name in myObject) { var value = myObject[name]; var value = myObject[name]; sb.append(name); sb.append(name); sb.append(‘ = ‘); sb.append(‘ = ‘); sb.appendLine(value); sb.appendLine(value);} var s = sb.toString();

16 “Atlas” Networking Client networking stack layered on XMLHTTP WebRequest, WebResponse, MethodRequest classes ASP.NET “Atlas” Web Services Bridge Access to ASP.NET-hosted and serviced components ASMX and WCF services,.NET objects, ASP.NET page-level services Automatic client proxy generation Integrated with ASP.NET intrinsics Wire format: Javascript object notation public class Location { public Point Coordinates; public Point Coordinates; public String Name; public String Name;} public class Location { public Point Coordinates; public Point Coordinates; public String Name; public String Name;} { Coordinates : { X: 2.17, Y: }, Name : " Eiffel Tower" } Name : " Eiffel Tower" } { Coordinates : { X: 2.17, Y: }, Name : " Eiffel Tower" } Name : " Eiffel Tower" }

17 Introduction to the Windows Communication Foundation

18 Windows Communication Foundation – Why? Windows Communication Foundation ASMX [ with WSE ].NET Remoting COM+ Enterprise Services Simple Configuration Open Standards Service-Oriented Attributes Transactions Components ExtensibleObject-Oriented MSMQSystem.Messaging Messages Reliable

19 Unifies today’s distributed technology stacks Appropriate for use on-machine, cross machine, and cross Internet The unified programming model for rapidly building service- oriented applications on the Windows platform Interoperates with applications running on other platforms Integrates with our own distributed stacks Unification Integration Codifies best practices for building distributed applicationsCodifies best practices for building distributed applications Service Orientation Windows Communication Foundation

20 Client Service Clients and Services

21 Client Service Endpoints Endpoint

22 Service CBA CBA Client Address, Binding, Contract A BC Address Where? Contract What? Binding How? Endpoint CBA

23 ServiceHost Client Service Creating Endpoints ClientChannel A BC CBA CBA CBA

24 Inside Bindings Transport IPCMSMQ Custom TCPHTTP Protocol Encoders Binary Text Custom.NETTX Custom SecurityRM Binding HTTP Text TXSecurityRM

25 Standard Bindings Interop Security Session Transactions Duplex Streaming BasicHttpBinding BP 1.1 T WsHttpBindingWS T | S XX WsDualHttpBindingWS XXX NetTcpBinding.NET XXXO NetNamedPipesBinding.NET XXXO NetMsmqBinding.NET XX NetPeerTcpBinding.NET X T = Transport Security | S = WS-Security | O = One-Way Only

26 ASMX/WSE3 WCF WCF ASMX/WSE3 Integration using Bindings MSMQ WCF WCF MSMQ WS-* Protocols MSMQ Protocol MSMQ Binding Http/WS Binding Java WCF WCF Java WS-* Protocols Http/WS Binding WCF WCF WS-* Protocols * Binding

27 Windows Workflow Foundation

28 The workflow framework & tools for Microsoft products and partner/customer ecosystem Windows Workflow Foundation Single workflow technology for Windows Base for Microsoft products and ISV/customer solutions One technology for human and system workflow scenarios A framework for building workflow into applications A framework to build on - not an application or server Exposed to developers via WinFX Brings workflow to mainstream.NET development Transform workflow from niche to mainstream paradigm Build strong partner & solution ecosystem

29 What Is A Workflow? A set of activities that coordinate people and / or software... EscalateToManager Example activities…. CheckInventory Like a flowchart…. …organized into a workflow. Or a state diagram….

30 Workflow Scenario Spectrum Participants: people, roles Flow style: flexible, dynamic Data: unstructured, documents Participants: apps, services Flow style: prescriptive, protocols Data: structured, transactional Information Worker Document Review… Information Worker Document Review… System Workflow Human Workflow Windows Workflow Foundation Business to Business Supply Chain Mgmt… Business to Business Supply Chain Mgmt… Line of Business Apps Quote to Cash, Sales Automation… Line of Business Apps Quote to Cash, Sales Automation… CRM ERP IT Management New H ire Provisioning, Trouble Ticket,… IT Management New H ire Provisioning, Trouble Ticket,….NET Developer Pageflow, Service Coordination….NET Developer Pageflow, Service Coordination…

31 WinFX Workflow And BizTalk Server Windows Workflow Foundation Messaging Desig n Tools Busines s ActivityMonitorAndAdminTools Orchestration Transformation Adapters BizTalk Server Accelerators Premium BPM server Premium BPM server Distinct server product Distinct server product Use in B2B, EAI, BPM scenarios Use in B2B, EAI, BPM scenarios Deployable solutions Deployable solutions Manageability, Scale-out Manageability, Scale-out Workflow framework Workflow framework Exposed via WinFX Exposed via WinFX Broad set of scenarios Broad set of scenarios Used to build solutions Used to build solutions Enables manageability Enables manageability and scale-out in solutions Use for building workflow into apps or workflow-enabled servers Use for building workflow into apps or workflow-enabled servers Visual Studio Designer Future version will migrate to Windows Workflow Foundation for orchestration Future version will migrate to Windows Workflow Foundation for orchestration Workflow

32 Windows Workflow Foundation Key Concepts Host Process Windows Workflow Foundation Runtime Engine A Workflow An Activity Runtime Services Base Activity Library Custom Activity Library Visual Designer Visual Designer: Graphical and code- based construction Workflows are a set of Activities Workflows run within a Host Process: any application or server Developers can build their own Custom Activity Libraries Components Base Activity Library: Out-of-box activities and base for custom activities Runtime Engine: Workflow execution and state management Runtime Services: Hosting flexibility and communication

33 Visual Designer Design Debug

34 The.NET Language C# 3.0 Integrated Query Project

35 Getting productive Today we program against relational and hierarchical data using a language that does not support this natively Data != Objects We are busy describing how things need to get done in stead of what we want

36 C# 3.0 Design Goals Integrate objects, relational, and XML Build on foundation laid in C# 1.0 and 2.0 Run on the.NET 2.0 (“Whidbey”) CLR Remain 100% backwards compatible

37 The LINQ Project Standard Query Operators Objects DLinq (ADO.NET) XLinq(System.Xml) XML.NET Language Integrated Query C# 3.0 VB 9.0 Others… SQLWinFS

38 LINQ Style programming var contacts = from c in customers from c in customers where c.State == "WA" where c.State == "WA" select new { c.Name, c.Phone }; select new { c.Name, c.Phone }; class Contact { … }; List contacts = new List (); foreach(Customer c in customers) { if(c.State == “WA”) { Contact ct = new Contact(); Contact ct = new Contact(); ct.Name = c.Name; ct.Name = c.Name; ct.Phone = c.Phone; ct.Phone = c.Phone; contacts.Add(ct); contacts.Add(ct);}}

39 Query Expressions Language integrated query syntax from id in source { from id in source | where condition } [ orderby ordering, ordering, … ] select expr | group expr by key [ into id query ]

40 C# 3.0 Language Innovations var contacts = from c in customers from c in customers where c.State == "WA" where c.State == "WA" select new { c.Name, c.Phone }; select new { c.Name, c.Phone }; var contacts = customers customers.Where(c => c.State == "WA").Where(c => c.State == "WA").Select(c => new { c.Name, c.Phone });.Select(c => new { c.Name, c.Phone }); Extension methods Lambda expressions Query expressions Object initializers Anonymous types Local variable type inference

41 Standard Query Operators RestrictionWhere Projection Select, SelectMany Ordering OrderBy, ThenBy GroupingGroupBy Quantifiers Any, All Partitioning Take, Skip, TakeWhile, SkipWhile Sets Distinct, Union, Intersect, Except Elements First, FirstOrDefault, ElementAt Aggregation Count, Sum, Min, Max, Average Conversion ToArray, ToList, ToDictionary CastingOfType<T>

42 DLinq For Relational Data SqlConnection c = new SqlConnection(…); c.Open(); SqlCommand cmd = new c.Name, c.Name, c.Phone FROM Customers c FROM Customers c WHERE c.City WHERE c.City "London“); DataReader dr = c.Execute(cmd); while (dr.Read()) { string name = dr.GetString(0); string name = dr.GetString(0); string phone = dr.GetString(1); string phone = dr.GetString(1); DateTime date = dr.GetDateTime(2); DateTime date = dr.GetDateTime(2);}dr.Close(); Accessing data today Queries in quotes Loosely bound arguments Loosely typed result sets No compile time checks

43 public class Customer { … } public class Northwind: DataContext { public Table Customers; public Table Customers; …} Northwind db = new Northwind(…); var contacts = from c in db.Customers from c in db.Customers where c.City == "London" where c.City == "London" select new { c.Name, c.Phone }; select new { c.Name, c.Phone }; DLinq For Relational Data Accessing data with DLinq Classes describe data Strongly typed connection Integrated query syntax Strongly typed results Tables are like collections

44 XLinq For XML Data XmlDocument doc = new XmlDocument(); XmlElement contacts = doc.CreateElement("contacts"); foreach (Customer c in customers) if (c.Country == "USA") { if (c.Country == "USA") { XmlElement e = doc.CreateElement("contact"); XmlElement e = doc.CreateElement("contact"); XmlElement name = doc.CreateElement("name"); XmlElement name = doc.CreateElement("name"); name.InnerText = c.CompanyName; name.InnerText = c.CompanyName; e.AppendChild(name); e.AppendChild(name); XmlElement phone = doc.CreateElement("phone"); XmlElement phone = doc.CreateElement("phone"); phone.InnerText = c.Phone; phone.InnerText = c.Phone; e.AppendChild(phone); e.AppendChild(phone); contacts.AppendChild(e); contacts.AppendChild(e); }doc.AppendChild(contacts); Programming XML today <contacts> Great Lakes Food Great Lakes Food (503) (503) …</contacts> Imperative model Document centric No integrated queries Memory intensive

45 XLinq For XML Data XElement contacts = new XElement("contacts", from c in customers from c in customers where c.Country == "USA" where c.Country == "USA" select new XElement("contact", select new XElement("contact", new XElement("name", c.CompanyName), new XElement("name", c.CompanyName), new XElement("phone", c.Phone) new XElement("phone", c.Phone) )); Programming XML with XLinq Declarative model <contacts> Great Lakes Food Great Lakes Food (503) (503) …</contacts> Element centric Integrated queries Smaller and faster

46 XLinq For XML Data Language integrated query for XML Expressive power of XPath / XQuery But with C# or VB as programming language Leverages experience with DOM Element centric, not document centric Functional construction Text nodes are just strings Simplified XML namespace support Faster and smaller

47 Benefits Of LINQ Unified querying of objects, relational, XML Type checking and IntelliSense for queries SQL and XQuery-like power in C# and VB Extensibility model for languages / APIs Describe What, not how boosts productivity

48 Questions?