Download presentation
Presentation is loading. Please wait.
Published byGertrude Green Modified over 9 years ago
1
Sascha P. Corti Developer Evangelist Microsoft Switzerland mail: sascha.corti@microsoft.comsascha.corti@microsoft.com blog: http://www.corti.com/weblogsascha team: http://blogs.msdn.com/swiss_dpe_teamhttp://www.corti.com/weblogsaschahttp://blogs.msdn.com/swiss_dpe_team
2
.NET Framework 3.5 - Key Features Visual Studio 2008 - IDE Enhancements HTML Designer CSS Support JavaScript & AJAX Support Data Access ASP.NET 3.5 Extensions (Preview) AJAX & Silverlight ADO.NET Entity Framework ADO.NET Data Services ASP.NET MVC ASP.NET Dynamic Data
3
Expressive and standards-compliant Betterdeveloper/designercollaboration Secure, scalable platform
4
LINQ – Integrated query support for Objects, SQL, DataSets, and XML WCF support for REST and JSON services WCF & WF integration Syndication object model Managed Add-in framework (System.AddIn) XBAP support for Firefox ASP.NET AJAX Integration Client Application Services
5
Visual Studio 2008 supports targeting multiple versions of the.NET Framework Choose which Framework version to target when opening or creating an application.NET Framework 2.0.NET Framework 3.0.NET Framework 3.5 Visual Studio IDE only shows feature appropriate for your selected target version Toolbox, Add New Item, Add Reference, Intellisense
6
IDE Enhancements
7
Split View Mode View source and design side-by-side Updates in real time Performance improvements Reduced lag during switch between views Nested master page support
8
http://www.oswd.org
10
Dramatically simplifies Building and Managing CSS Styles. Intuitive Visual Designer Summary Mode helps track where styles are being applied Shares same CSS engine as Expression Web Developers and Designers have access to same features New Styling Dialog
12
JavaScript? AJAX, Silverlight, Live.com APIs Intellisense in Code Editor Type Inference Intellisense Hints Intellisense for External Libraries Debugging Support Breakpoints directly in.html,.js,.aspx or.master Attach to Internet Explorer to debug JavaScript on any page (HTML, PHP, JSP, etc.)
14
Basic AJAX Controls Part of every Web Project in VS 2008 Profit from JavaScript Support Team System Web Tests now captures Script-Generated HTTP-Requests ASP.NET AJAX Control Toolkit New Extender Wizard
16
1980s: Query Languages (Dbase) Data Manipulation = Core Part of Programming Model Late 1990s / Early 2000s Data Access APIs Last few Years Object / Relational Mapping
17
LINQ Query, Set and Transform Operations for.NET Makes querying data a core programming concept Works with all types and shapes of data Relational databases XML Plain old Objects Works with all.NET languages New VB and C# have integrated language support New ASP.NET Data Controls
18
New Project Item that creates a default AJAX-enabled WCF Service Update existing WCF Services via Attribute Make Communication Format AJAX friendly (i.e., JSON or REST) ScriptManager supports the registration of WCF- & ASMX- Services
19
Data Access
20
Preview Build
21
ASP.NET 3.5 Extensions (Preview).NET Framework 2.0 + SP2 WPFWPFWCFWCFWFWF Windows CardSpace.NET Framework 3.0 + SP2.NET Framework 3.5 LINQLINQ WF & WCF Enhancements Add-inFrameworkAdd-inFramework Additional Enhancements ASP.NET Model View Controller ADO.NET Data Services ADO.NET Data Services ASP.NET Dynamic Data ASP.NET AJAX Enhancements + Silverlight Controls ADO.NET Entity Framework Codename “Astoria” Codename “Oryx”
22
ASP.NET AJAX History & Navigation Updated Validators, TreeView, Menu and WebParts Back Button support for all Browsers Script Combining File- and Resource- Scripts ASP.NET Silverlight Controls ASP:Silverlight Control Automate client installation and creation of Silverlight plugin Silverlight plugin Helper Classes Easily instantiate Silverlight plugin programmatically ASP:MediaPlayer Embed video instantly with variety of skins included Script
23
Intrinsic Layer of Abstraction over a DB called Entity Data Model (EDM) Developers code against conceptual entities representing the data Conceptual entities are mapped to the database schema Mapping is explicit and can be changed Benefits: Abstracts developers from the underlying database tables and columns where the data is stored Exposes data in the form of domain-specific object Isolates and minimizes impact of changes between app and data Simplify the Development of flexible Data-Oriented Applications. Conceptual Models Mapping Logical Models Entity Data Model Entity Client Entity SQL Object Services LINQ to Entities
24
Data Services are Specialized WPF Services Expose data as a URI-addressable resources http://host/MyDS.svc/Customers(492)/Orders Services use URIs to locate and identify data Use URI parameters to filter, page, sort data Use HTTP verbs to interact with resources GET, PUT, POST, or DELETE Data can be represented in JSON or ATOM Publishing Protocol (AtomPub) formats – specified by the client Simplifies data connectivity for AJAX and Silverlight apps Ability to create and consume data- centric, RESTful services. IQueryableIQueryable Data Service.NET Client Library AJAX Client Library Silverlight Client Library Client LibrarySilverlight
25
Provides an Alternative for building Web Applications on ASP.NET Clean Separation of Concerns Full Control over Markup and Rendering Highly pluggable and extensible Enables testability and TDD Works with.aspx and.ascx as views But no server controls, postbacks, viewstate Enable the creation of Web Applications using the Model-View-Controller Pattern
26
Dynamically constructs Pages based on the Data Model of the Underlying Database Provides a usable Application with no Code, but can easily be customized Dynamic Data App consists of three Components: Data Model – LINQ to SQL mapping file Page templates – ASPX pages that provide default views of data Dynamic Data Fields – User Controls for rendering individual fields Provides a view of the Data based on Default Templates Templates use the data model to determine the correct controls to display and their behavior AJAX-enabled templates provide filtering, paging, and validation Provide the Web App scaffolding to build rich, data-driven Web applications
28
Functional testing for ASP.NET AJAX and JavaScript Integrated code metrics Improved performance and scalability profiling Functional testing for ASP.NET AJAX and JavaScript Integrated code metrics Improved performance and scalability profiling Faster, Easier Development A powerful, new HTML designer CSS management JavaScript debugging and Intellisense Better support for working with data ListView control LinqDataSource A powerful, new HTML designer CSS management JavaScript debugging and Intellisense Better support for working with data ListView control LinqDataSource Less Effort, More Effect ASP.NET AJAX built-in Enhanced AJAX functionality Better interoperability with WebParts,,, etc Nested master pages New ListView control ASP.NET AJAX built-in Enhanced AJAX functionality Better interoperability with WebParts,,, etc Nested master pages New ListView control Breakthrough User Experiences
29
© 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.
31
AJAX-enabled web applications are very popular, but their asynchronous nature makes testing them very difficult Visual Studio 2008 Team System enables team members to target even the most complex AJAX applications – HTTP requests, whether user or script generated are captured as part of the web test The Challenge The Solution
32
.NET Framework 2.0 + SP1 Windows Presentation Foundation Windows Communication Foundation Windows Workflow Foundation Windows CardSpace.NET Framework 3.0 + SP1.NET Framework 3.5 LINQLINQ WF & WCF Enhancements Add-inFrameworkAdd-inFramework Additional Enhancements
33
ASP.NET AJAX History & Navigation Updated Validators, TreeView, Menu and WebParts Back button support for all browsers Client and server APIs Manage history titles Create Permalinks with state Script Combining Supports File- and Resource- based Scripts. Script
34
ASP:Silverlight control Automate client installation and creation of Silverlight plugin AJAX classes for programming with Silverlight Silverlight plugin helper classes Easily instantiate Silverlight plugin programmatically Interact with Silverlight on the client or server ASP:MediaPlayer Embed video instantly with variety of skins included Easily customize the XAML Works with Expression Encoder Add chapter annotations and captions Localize content Handle custom media markers in the stream
35
Provides an intrinsic layer of abstraction over a database called the Entity Data Model (EDM) Developers code against conceptual entities representing the data Conceptual entities are mapped to the database schema Mapping is explicit and can be changed Benefits: Abstracts developers from the underlying database tables and columns where the data is stored Exposes data in the form of domain-specific object Isolates and minimizes impact of changes between app and data Decreases the amount of code and maintenance required The Entity Framework is a set of technologies that simplify the development of flexible data-oriented applications.
36
Conceptual Models Mapping Logical Models Entity Data Model Entity Client Entity SQL Object Services LINQ to Entities Entity Data Model Abstraction over a relational database Consists of conceptual & logical models Provides mapping layer between conceptual model and logical model Entity Client Provides classes similar to ADO.NET Providers Can return results as DbDataReaders Entity SQL Textual SQL language for dynamic queries Object Services Enables you to work with object instances Provides persistence and change tracking LINQ to Entities Provides LINQ syntax and strongly-typed objects for queries over EDM
37
Expose data as a URI-addressable resources i.e. http://host/NorthwindDataService.svc/Customers(492)/Ordershttp://host/NorthwindDataService.svc/Customers(492)/Orders Services use URIs to locate and identify data URIs can be used to traverse associations Clients can filter, page, & sort data by specifying parameters on the URI Apps can interact with the resources using HTTP verbs GET, PUT, POST, or DELETE Data can be represented in JSON or ATOM Publishing Protocol (AtomPub) formats – as specified by the client Simplifies data connectivity for AJAX and Silverlight apps ADO.NET Data Services provides the ability to create and consume data-centric, RESTful services.
38
Client-side libraries for.NET, AJAX, & Silverlight Any HTTP client can consume the services URIs can map to entities in EDM Client libraries abstract clients from URI syntax Data Services are specialized WCF services IQueryableIQueryable Data Service.NET Client Library AJAX Client Library AJAX Silverlight Client Library Client LibrarySilverlight
39
Encourages a clean separation of concerns amongst the portions of your application Makes practices like Test-Driven Development substantially easier to adopt Leverages the ASP.NET Routing engine, giving you full control over your application’s URIs Completely extensible framework that allows you to modify every aspect of the pipeline if needed Extensions to ASP.NET that enable the creation of web applications using the model-view-controller pattern
40
Provides an Alternative for building Web Applications on ASP.NET Clean separation of concerns Full control over markup and rendering Highly pluggable and extensible Enables testability and TDD Works with.aspx and.ascx as views But no server controls, postbacks, viewstate
41
URL Routing Engine Route Route Handler Http Handler Controller Builder Controller Factory Controller View Factory View Request Response Note: Each step highlighted in yellow represents a point of extensibility. ASP.NET Routing Pipeline
42
Request Response 8 Controller 5 View 7 3 UrlRoutingModule Global.asax – Application_Start 1 URLControllerHandler /Customers/Edit/3CustomersMvcRouteHandler 4 Routing Table 2 Model 6
43
Dynamically constructs pages based on the data model of the underlying database Provides a usable application with no code, but it can easily be customized Dynamic Data App consists of three components: Data Model – LINQ to SQL mapping file Page templates – ASPX pages that provide default views of data Dynamic Data Fields – user controls for rendering individual fields Provides a view of the data based on default templates Templates use the data model to determine the correct controls to display and their behavior AJAX-enabled templates provide filtering, paging, and validation Provide the Web App scaffolding to build rich, data-driven Web applications
44
All my services are being re-written with WCF – how does my ASP.NET application call them? Visual Studio 2008 provides a new project item that creates a default AJAX-enabled WCF service Existing WCF services can be decorated with an attribute to convert their communication format to something that is AJAX friendly (i.e., JSON or REST) Also, in Visual Studio 2008, the ScriptManager supports the registration of WCF services as well ASMX Visual Studio 2008 provides a new project item that creates a default AJAX-enabled WCF service Existing WCF services can be decorated with an attribute to convert their communication format to something that is AJAX friendly (i.e., JSON or REST) Also, in Visual Studio 2008, the ScriptManager supports the registration of WCF services as well ASMX The Challenge The Solution
45
Microsoft's next-generation platform for distributed systems A set of extensions to the Microsoft.NET Framework 2.0 Build WCF services in Visual Studio 2008 using any.NET Language Intelligent code editing, IDE Extensions for WCF, debugging, re- factoring, code snippets, etc. Visual Basic.NET, Visual C#, etc. Runs on Microsoft Windows Vista Microsoft Windows XP Microsoft Windows Server 2003 Microsoft Windows Server 2008 Part of.NET 3.0 and.NET 3.5
46
SOAP, POX, WS-*, Web (or REST), Syndications View as part of the same ecosystem SOAP WS-* RSS ATOM POX REST Web, Syndications via WCF in.NET 3.5 Web, Syndications via WCF in.NET 3.5 SOAP, WS-*, and POX via WCF in.NET 3.0 SOAP, WS-*, and POX via WCF in.NET 3.0
47
New Project Item Attribute that makes this WCF service AJAX-callable
48
Faster & Easier Development
49
How do developers know they are writing code that can be maintained and understood in the future? Visual Studio 2008 Team System integrates sophisticated code metrics that enable developers to clearly understand how maintainable and complex the code they are building is; This understanding is gathered from the following metrics Cyclometic complexity Maintainability Index Inheritance Depth Class Coupling Lines of code Visual Studio 2008 Team System integrates sophisticated code metrics that enable developers to clearly understand how maintainable and complex the code they are building is; This understanding is gathered from the following metrics Cyclometic complexity Maintainability Index Inheritance Depth Class Coupling Lines of code The Challenge The Solution
51
Code reviews are time consuming, error prone and depends on ‘group’ knowledge Code analysis examines every path code might take; looking for known problems and concerns; This feature has been greatly enhanced in Visual Studio 2008 Better discoverability of the feature through the Developer top-level menu More flexible warning suppressions Code analysis report comparison Enhanced code analysis check-in policy Code-aware spell checker Code analysis examines every path code might take; looking for known problems and concerns; This feature has been greatly enhanced in Visual Studio 2008 Better discoverability of the feature through the Developer top-level menu More flexible warning suppressions Code analysis report comparison Enhanced code analysis check-in policy Code-aware spell checker The Challenge The Solution
52
Understanding data gathered by a profiler is difficult and tedious In Visual Studio 2008 Team System, the industrial strength profiler has been enhanced across the board; this includes New data collection control WCF support However, probably its most notable features is its ability to visually compare performance data In Visual Studio 2008 Team System, the industrial strength profiler has been enhanced across the board; this includes New data collection control WCF support However, probably its most notable features is its ability to visually compare performance data The Challenge The Solution
53
Dynamically control how performance data is gathered. Insert ‘marks’ which help you correlate data Compare 2 performance reports against each other
54
Use this layout to show software code The font is Courier, a monospace font The slide doesn’t use bullets but levels can be indented using the “Increase List Level” icon on the Home menu
55
Name Title Group
57
Name Title Company
58
Name Title Company
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.