Download presentation
Presentation is loading. Please wait.
2
Building a Complete Web Application Using ASP.NET 3.5 & Visual Studio 2008 (Part 1 of 2) Jeff King Program Manager Microsoft Corporation jking@microsoft.com DEV312
3
Today’s Goal Build a web application using: ASP.NET 3.5 Visual Studio 2008 IIS 7.0 Primarily demo and code driven Please ask questions and make it interactive! Provide you with a broad understanding of some of the great new features shipping later this year
4
Multi-Targeting Support in VS 2008 New HTML Designer and CSS Support LINQ and Object Relational Mapping New ASP.NET Data Controls Features Covered (Part 1)
5
JavaScript IntelliSense and Debugging Support ASP.NET AJAX and the AJAX Extenders IIS 7.0 Administration and Security Integration Features Covered (Part 2) IIS 7.0 Extensibility Opportunities
6
VS 2008 Multi-Targeting Support 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
7
VS 2008 Multi-Targeting Support
8
VS 2008 HTML Designer Massively improved HTML designer Same WYSIWYG designer engine as in Expression Web New capabilities: Fast designer/source switching Split view designer Nested master pages Rich CSS editing support Enable better designer/developer workflow
9
Split View Editor CSS Design Support Nested Master Pages
10
Free CSS Web Templates www.opensourcetemplates.org
11
Working with Data Querying and manipulating data has always been a fundamental part of our jobs as programmers Data formats change, but core needs are the same
12
USE empl REPLACE ALL salary WITH (salary * 1.1) FOR supervises > 0 LIST ALL fname, lname, salary FOR Supervises > 0 Data Access (DBASE circa 1980s) Data querying and manipulation a core part of the programming model experience Certainly had limitations, but it sure was useful
13
SqlCommand cmd = new SqlCommand( @"SELECT fname, lname, salary FROM Empl WHERE supervises > @p0" ); cmd.Parameters.AddWithValue("@po", 0); SqlConnection c = new SqlConnection(…); c.Open(); DataReader people = c.Execute(cmd); while (people.Read()) { string fname = (string) people[“fname”]; string lname = (string) people[“lname”]; double salary = (double) people[“salary”]; } dr.Close(); Data Access APIs (circa late 1990s/early 2000s)
14
Object / Relational Mapping (circa last few years) public class Employee { public string FirstName; public string LastName; public double Salaray; } IList employees = session.CreateCriteria(typeof(Employee)).Add(Expression.Gt(“supervises", 0).List(); foreach(Employee employee in employees) { string fname = employee.FirstName; string lname = employee.LastName; double salary = employee.Salary; } Map relational data to/from objects Cleaner integration of business rules and validation
15
But Challenges Still Remain… How to retrieve non-relational data? XML, RSS, Web Services, REST, AD, Files, etc. How to interact with plain old objects? How do you interact and query custom domain models? How to enable rich data shaping & transformations? Support flexible query composition (that is fast!) How to enable clean code in both a strongly typed and dynamic language world?
16
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
17
New ASP.NET Data Controls
18
LINQ LINQ to SQL
19
Intermission More coming in Part 2: AJAX: JavaScript IntelliSense and Debugging ASP.NET AJAX ASP.NET AJAX Control Extenders IIS7 and ASP.NET Integration Security integration Extensibility Opportunities
20
Evaluation Forms
21
Questions?
22
© 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.
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.