Creating Dynamic Web Application Using ASP.Net 3 5_MVP Alezandra Buencamino Nicolas

  • 8,082 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
8,082
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
171
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • Inform the students that if they have the .NET Framework installed on their computers, they can build programs without Microsoft Visual Studio® 2008 (for instance, by using Microsoft Notepad only). However, Visual Studio 2008 is a great development environment that makes developing Web applications a rich experience for developers. Visual Studio 2008 is designed to support the developer all the way through the development process.
  • Introduced with VS2005 and ASP.NET 2.0:The ASP.NET Compilation tool (Aspnet_compiler.exe) enables you to compile an ASP.NET Web application, either in place or for deployment to a target location such as a production server. By default, ASP.NET Web pages and code files are compiled dynamically when users first request a resource such as a page from the Web site. Subsequent requests to the same page are extremely efficient.ASP.NET can also pre-compile an entire site before it is made available to users. This provides a number of advantages, including:• Faster response time for users, since pages and code files do not have to be compiled the first time they are requested. This is particularly useful on large sites that are updated frequently. • A means to identify compile-time bugs before users see a site.• The ability to create a compiled version of the site that can be deployed to a production server without source code.The ASP.NET Compilation tool creates one assembly for each content folder in the target Web site, or it creates one assembly for each content file. The ASP.NET Compilation tool is not available with versions of ASP.NET earlier than ASP.NET version 2.0.<Click for Animation>New With VS2008:The ASP.NET Merge tool (Aspnet_merge.exe) enables you to combine and manage assemblies created by the ASP.NET Compilation Tool. While the ASP.NET Compilation tool can be used to pre-compile an application for deployment, the ASP.NET Merge tool enables further flexibility in deployment and release management of the applications. Beyond what the ASP.NET Compilation tool provides, the ASP.NET Merge tool enables the following:• Create one assembly for an entire Web site.• Create an assembly for each Web site folder and add a prefix to the assembly name.• Create a single assembly for just the Web site user interface (UI) elements, such as pages and controls.The ASP.NET Merge tool comes with the 3.5 version of the .NET Framework. It was released earlier as an add-on for Visual Studio 2005.The ASP.NET Merge tool is also not available with versions of ASP.NET earlier than ASP.NET 2.0.
  • VS2005:IntelliSense support in Visual Studio 2005 was a leap beyond what it had been in previous versions. The idea of “IntelliSense Everywhere” was truly born. VS2005 extended IntelliSense beyond the code-behind model to inline code and HTML markup as well. Web.config files also got to partake in IntelliSense. In design view, Smart Tags provided IntelliSense for the visual designer.<Click for Animation>VS2008:IntelliSense functionality for JavaScript was added in VS2008. It makes programming elements easy to access in the Code Editor in Visual Studio. IntelliSense works with all ECMAScript languages. This includes Microsoft JScript and JavaScript.As you work with client script, IntelliSense lists the objects, functions, properties, and parameters that are available relevant to the current programming context. This includes scripting elements in the current file and any code that is referenced directly or indirectly from your script, such as script file references, assembly script references, and service references. JavaScript IntelliSense supports Document Object Model (DOM) elements, intrinsic objects, user-defined variables, functions, and objects, external file references, XML code comments, and ASP.NET AJAX objects.*The Visual Studio 2008 IDE has another nice feature when working with IntelliSense. If you hold down the “Ctrl” key while the IntelliSense drop-down is visible you’ll be able to switch it into a semi-transparent mode that enables you to quickly look at the code underneath without having to escape out of IntelliSense.External file references give the developer the ability to break up script code into different files, rather than trying to manage all of the code in a single file. Since you can organize your scripts into more than one external file, it is common that you may reference scripts from one file in another script file. References directives can be used to facilitate IntelliSense across multiple files. XML code comments are text descriptions that you add to your script. These text descriptions are displayed with IntelliSense when you reference an element in the script, such as a function or parameter. XML code comments are only available from referenced files, assemblies, and services.
  • Introduced in VS2005:Visual Studio 2005 introduced significant changes in its WYSIWYG design interface. Many of the complaints from previous WYSIWYG Web page editors was addressed. For example, markup format was not modified when switching to and from design view in the IDE.Nested master pages were introduced and supported in ASP.NET 2.0. They have become a valuable tool in making more efficient changes to Web page layouts. ASP.NET 2.0 supports this significant feature. Nested master pages enable both developers and designers to quickly and easily make changes to the layout of a site at multiple levels with minimal code changes. Nested master pages are a powerful feature but one of the things that made it difficult to adopt was that Visual Studio 2005 did not support nested master pages. Editing of content pages based on nested master pages was not possible through the designer.<Click for Animation>New in VS2008:In addition to supporting both design-view and source-view when editing pages, Visual Studio 2008 has added a split-view mode. This allows you to see both the HTML source and the Design View at the same-time, and easily have any changes you make in one view be updated in the other. This removes the need for publishing source or launching Internet Explorer, as the developer can see the results of the source code changes instantaneously in the Design View pane. The Split-view panes can be configured to layout horizontally or vertically.Visual Studio 2008 also adds support in the designer for nested master pages. Visual Studio 2008 fully supports nested master pages thus making their implementation no more difficult than a single master page. When adding new master pages to a project, the developer can select a master page to be its master. When adding a new master page through the “Add New Item” dialog, there is now a checkbox indicating we want to base this master page on a parent master page. In the designer, the entire hierarchy of nested master pages is viewable just like a single master page is. Thus allowing the editing of the content within a page based on a nested master page.
  • ASP.NET 3.5 extends ASP.NET 2.0 and includes better support for many of the new technologies like AJAX and Silverlight.AJAX is now included as part of ASP.NET 3.5 and no longer requires a separate download.ASP.NET is also now tightly integrated into the processing pipeline of IIS 7.0 in Windows Server 2008 and Windows Vista. As a result, many of the application services that were used in ASP.NET 2.0 are now available through IIS 7.0 as servicesWith the tight integration between ASP.NET and IIS 7 in version 3.5, this provider model can now service clients other than ASP.NET applications. Application services like Membership can be accessed via a web services from smart clients, desktop clients, etc.ASP.NET 3.5 also has its own set of new controls and integrates with more technologies like LINQ.And Visual Studio 2008 supports all of this through its WYSIWYG interface.
  • Microsoft ASP.NET AJAX enables you to quickly create Web pages that include a rich user experience with responsive and familiar user interface (UI) elements. ASP.NET AJAX provides client-script libraries that incorporate cross-browser ECMAScript (JavaScript) and dynamic HTML (DHTML) technologies, and it integrates them with the ASP.NET 2.0 server-based development platform. By using ASP.NET AJAX, you can improve the user experience and the efficiency of your Web applications.
  • The ASP.NET AJAX server components consist of ASP.NET Web server controls and components to manage the UI and flow of an application, and to manage serialization, validation, control extensibility, and so on. There are also ASP.NET Web services that enable you to access ASP.NET application services for forms authentication and user profiles.ASP.NET AJAX provides Web services that you can use from client script to work with ASP.NET application services for forms authentication and user profiles. This enables you to use client script to help protect resources by using forms authentication and to persist user-specific settings on the server. In addition, ASP.NET AJAX includes network components that make it easy to return results from any Web service call.UpdatePanel - UpdatePanel controls are a central part of Microsoft ASP.NET AJAX. They are used with the ScriptManager control to enable partial-page rendering. Partial-page rendering reduces the need for synchronous postbacks and complete page updates when only part of the page has to be updated. Partial-page rendering improves the user experience because it reduces the screen flicker that occurs during a full-page postback and improves Web page interactivity.Updates to the content of an UpdatePanel can be accomplished in multiple ways. This triggering of updates (postbacks) is usually done by one or more controls set as a trigger for the UpdatePanel. Controls in the content template for an UpdatePanel control that cause a postback are automatically configured as triggers for that UpdatePanel control. However, you might want to disable the automatic triggers and trigger a refresh of the UpdatePanel control from an external control only. This is possible by setting certain properties on the UpdatePanel itself.UpdateProgress - The UpdateProgress control enables you to provide feedback on the progress of partial-page rendering. For postbacks or initial page rendering, UpdateProgress control content is not displayed. There can be many UpdateProgress controls on a page, each associated with a different UpdatePanel control. Alternatively, you can use one UpdateProgress control and associate it with all the UpdatePanel controls on the page. The UpdateProgress control renders a <div> element that is displayed or hidden depending on where a postback originates and whether the AssociatedUpdatePanelID property of the UpdateProgress is set. Timer - The Timer control enables you to perform postbacks at a specified interval. When you use the Timer control as a trigger for an UpdatePanel control, the UpdatePanel control is updated by using an asynchronous, partial-page update. You must include a ScriptManager object in your Web page to use the Timer control.You use the Timer control to update an UpdatePanel control by either including the timer inside the UpdatePanel control, or by placing the timer outside the UpdatePanel control and setting the timer as a trigger.You can also initiate a postback of a complete Web page by including the Timer control in the Web page and not setting it as a trigger for an UpdatePanel control.You can run server code when the timer interval has elapsed by creating an event handler for the Tick event. In the event handler, you can include code that dynamically adjusts the behavior of the Timer control.
  • An Extender control targets another control and extends its functionality. Extenders, or Extender Controls, add AJAX or client-side behavior to existing ASP.NET controls. These controls are used in conjunction with their ASP.NET counterparts.Extender controls are tied to specific control types, so you may only use them with these controls. They include a TargetControlID property that is populated with the name of the control with which it will interact.Once the Extender control is added, it adds a new group of properties to the control with which it is associated. Visual Studio 2008 includes an “Add Extender” Smart Tag for more easily adding extender controls to a target control. The list of extender controls presented when selecting “Add Extender” Smart Tag is filtered based on the type of control it is being attached to. Only those extenders that have been targeted to work with the specific target control will be displayed.Custom extender controls can be built by inheriting from Microsoft.Web.UI.ExtenderControl.
  • Namespaces and their descriptions:Global Namespace Contains members and types that extend base ECMAScript (JavaScript) objects and that provide members that are more familiar to .NET developers. Includes extensions for the JavaScript Array, Boolean, Error, Number, Object, and String types.Sys Represents the root namespace for the Microsoft AJAX Library, which contains all fundamental classes and base classes.Sys.NetContains types related to communication between ASP.NET AJAX client applications and Web services on the server.Sys.SerializationContains types related to data serialization for ASP.NET AJAX client applicationsSys.ServicesContains types that provide client script access in ASP.NET AJAX to ASP.NET authentication service, profile service, and other application services.Sys.UIContains types related to user interface (UI), such as controls, events, and UI properties in the Microsoft AJAX Library.Sys.WebFormsContains types related to partial-page rendering in the Microsoft AJAX Library.
  • The toolkit is a shared-source community project consisting of samples and components that make it easier to work with AJAX-enabled controls and extenders. The ASP.NET AJAX Control Toolkit provides both ready-to-run samples and a powerful SDK to simplify creating custom ASP.NET AJAX controls and extenders. It uses ASP.NET AJAX Extensions, which must be installed to utilize the toolkit.The ASP.NET AJAX Control Toolkit includes 40+ controls. There are two types of controls. There are new controls that may be used in your Web application. These controls provide new functionality that is not currently available. A few examples of new controls are the Accordion, TabContainer, and TabPanel controlsOn the other hand, the toolkit provides Extender controls, which add AJAX or client-side behavior to existing ASP.NET controls. These controls are used in conjunction with their ASP.NET counterparts. A few examples of these controls are ConfirmButtonExtender, CalendarExtender, and DragPanelExtender.
  • DataSourceControl pattern was introduced with ASP.NET 2.0The LinqDataSource control enables you to use LINQ in an ASP.NET Web page by setting properties in markup text. The LinqDataSource control uses LINQ to SQL to automatically generate the data commands.When you are retrieving data from an in-memory data collection, you set the ContextTypeName property to the object that contains the data collection. You set the TableName property to the property or field that returns the data collection. When you are querying a database, you must first create entity objects that represent the database and its tables. You can use the Object Relational Designer or the SqlMetal.exe utility to generate these objects. You then set the ContextTypeName property to the object that represents the database and set the TableName property to the object that represents the database table. The LinqDataSource control applies data operations in the following order:Where (specify which data records to return).Order By (sort).Group By (aggregate data records that share values).Order Groups By (sort grouped data).Select (specify which fields or properties to return).Auto-sort (sort data records by a property that the user has selected).Auto-page (retrieve a subset of data records that were selected by the user).
  • ASP.NET processing is now integrated with broader IIS processingmodularity allows us to completely integrate IIS7 and ASP.NET processing and in the process enable a whole new set of scenarios where .NET components and services can process all requests not just ASP.NET.These changes will not break your existing apps. In fact you don’t even have to adopt these changes because in IIS7, there are two processing modes that are selectable per worker process. The first is called Classic mode and it will treat ASP.NET just like it did in IIS6. In IIS6, ASP.NET has a separate processing pipeline of its own that executed as an ISAPI extension to IIS. To IIS, ASP.NET was just a black box. This way of processing ASP.NET has limitations, for example, ASP.NET can only touch a request at one point in the IIS pipeline, it cannot alter a request before or after ASPNET ISAPI is called. Also, you can only use built-in ASP.NET components like Forms Authentication for requests mapped to ASP.NET, even though you may want to apply them to images, documents or other scripted pages like ASP.In IIS7 Integrated mode, the separate pipeline and its limitations go away.ASP.NET components are now integrated with IIS components to form one unified request processing pipeline. Both native and managed modules subscribe to one generic set of pipeline events.ASP.NET services and extensions can touch all requests, and plug into any point in the HTTP request processing pipeline. This allows ASP.NET developers to reuse ASP.NET services like Membership, logging and caching on other content types like ASP pages or static images. It also gives them the power of .NET when extending their Web server because httpModules built with ASP.NET APIs are now treated like first class IIS components. If you aren’t an ASP.NET developer, this is still really great news for you because for the first time it opens up the .NET side of our pipeline to apply to your PHP or ASP pages.

Transcript

  • 1. Creating Dynamic Web Application Using ASP.NET 3.5
    Zandra Nicolas
    Senior Lecturer - UPITTC
    MCSD/MCT
    MVP (ASP/ASP.NET)
  • 2. AGENDA
    Visual Studio 2008 Overview
    ASP.NET 3.5
    ASP.NET AJAX
    LINQ
    Silverlight
  • 3. Visual Studio 2008: The Tool for .NET Development
    Web Forms, ASP.NET AJAX
    Windows Forms, WPF
    Error Handling
    Multiple Languages
    Data Access, LINQ
    Web Services, WCF
    Design
    Deploy
    Develop
    Debug
  • 4. What&apos;s New: Visual Studio 2008
    • More than 250 new features
    • 5. Key advances in three primary pillars:
    • 6. Rapid application development
    • 7. Effective team collaboration
    • 8. Break through user experiences
    • 9. Improvements include:
    • 10. New Merge tool
    • 11. Greatly enhanced HTML / CSS Tools
    • 12. JavaScript and AJAX IntelliSense
    • 13. Radical designer improvements
  • Visual StudioCompile and Merge Tools
    • Visual Studio 2005
    • 14. Introduced Web Application Projects
    • 15. Compile each page individually or each folder
    • 16. Pre-compile tool enables compilation in place or for easier deployment
    • 17. Visual Studio 2008
    • 18. Supports Web Application Projects as well as Web Sites
    • 19. Merge tool allows merging pre-compiled assemblies
    aspnet_compiler [-?]
    [-m metabasePath | -v virtualPath [-p physicalPath]]
    [[-u] [-f] [-d] [-fixednames] targetDir]
    [-c]
    [-errorstack]
    [-nologo]
    [[-keyfile file | -keycontainer container ] [-aptca] [-delaysign]]
    aspnet_merge [-?] applicationPath [-keyfile filename [-delaysign]] [-o assemblyname | -w assemblyname | -prefix prefix] [-copyattrs [assemblyfile]] [-debug] [-nologo] [-errorstack] [-r] [-xmldocs] [-a] [-logfilelogfile] [-allowattrstextfile]
  • 20. Visual StudioHtml and CSS Tools
    • Visual Studio 2005
    • 21. Better designer support
    • 22. Improved source code preservation
    • 23. Tag navigator
    • 24. Visual Studio 2008
    • 25. Improved standards validation
    • 26. New CSS design tools
  • Visual StudioIntelliSense Everywhere!
  • Visual StudioDesigner Improvements
    • Visual Studio 2008
    • 36. Nested Master page support
    • 37. Spit view mode
    • 38. Visual Studio 2005
    • 39. Master page support
    • 40. Better WYSIWYG support
  • ASP.NET 3.5 Themes
    Experience Productivity Breakthroughs
    Dramatically reduce concepts, lines of code required
    Awesome Visual Studio Web tool experience including debugging and Intellisense for JavaScript
    Simplified data integration through LINQ support
    Replace/extend all built-in features & services
    Create Outstanding User Experiences
    Complete AJAX integration including 40+ controls & IDE support
    New controls for Silverlight and Media
    Collaborate Across the Development Cycle
    Web server delegation for shared application management
    The world’s fastest Web application server
  • 41. ASP.NET Architecture
    ASP.NET 2.0 “Page Framework” Features
    ASP.NET 2.0 “Control Buckets” (50+)
    Master Pages
    Themes / Skins
    Localization
    Client Scripting
    Security
    Data
    Navigation
    WebParts
    ASP.NET 2.0
    ASP.NET 2.0 Application Services APIs
    ASP.NET AJAX 1.0
    Membership
    Role Manager
    Personalization
    Site Navigation
    Database Caching
    Health Monitoring
    ASP.NET 2.0
    Provider Model Design Pattern
    Providers
    Windows
    SQL Server
    XML Sitemap
    Custom Provider
    IIS 5.0 / 6.0
    SQL Express
  • 42. ASP.NET 3.5
    ASP.NET AJAX 1.0
    ASP.NET AJAX
    ASP.NET 2.0
    LINQ
    LinqDataSource
    Listview Control
    More…
    IIS 7.0
    ASP.NET 2.0 Application Services
    IIS 5.0 / 6.0
    Forms Authentication
    Profile
    Role Management
    Session State
    ASP.NET Architecture
  • 43. ASP.NET AJAX Architecture
    Client Script Library
    Controls, Components
    ASP.NET AJAX Server Extensions
    App Services Bridge
    Component Model and UI Framework
    ASP.NET AJAX
    Server Controls
    Web Services Bridge
    Base Class Library
    Script Core
    ASP.NET 2.0
    Application Services
    Page Framework,
    Server Controls
    Browser Compatibility
    ASP.NET AJAX
    ASP.NET Pages
    HTML, Script,
    ASP.NET AJAX
    Markup
    Service
    Proxies
    Web Services
    Client Application Services
    Browser
    Integration
    Client Framework and Services
    Server Framework
  • 44. When do I use ASP.NET AJAX?
    Client Centric AJAX
    • Microsoft AJAX Library
    • 45. Object oriented client development
    • 46. Adds type system and extensions to JavaScript
    • 47. JavaScript IntelliSense
    Server Centric AJAX
    • Update only a portion of an ASP.NET page
    • 48. Easily increase performance of existing ASP.NET applications
    • 49. Display progress indicators
  • ASP.NET AJAX Controls
    • UpdatePanel
    • 50. Refresh selected parts of a page
    • 51. Pages appear more interactive
    • 52. Triggers specify which control causes the update
    • 53. UpdateProgress
    • 54. Provides status information on partial-page updates
    • 55. Timer
    • 56. Performs postbacks at defined intervals
  • AJAX Control Extenders
    • Add additional functionality to existing controls
    • 57. Improved designer support in Visual Studio 2008
  • AJAX Client Library
    • The Microsoft AJAX Library includes a rich framework to simplify client programming
    • 58. Namespaces in the Client Library
    • 59. Global Namespace
    • 60. Sys
    • 61. Sys.Net
    • 62. Sys.Serialization
    • 63. Sys.Services
    • 64. Sys.UI
    • 65. Sys.WebForms
  • AJAX Control Toolkit
    • Shared-source community project
    • 66. Contains:
    • 67. Ready to run samples
    • 68. Powerful SDK
    • 69. Uses AJAX Extensions
    • 70. 40+ Controls
  • Language Integrated Query(LINQ)
    LINQ is included in the .NET Framework
    IntelliSense support provides information on LINQ language syntax
    LINQ Visual Debugger Add-in
    Object Relational Designer
  • 71. LinqDataSource Control
    Exposes LINQ to Web developers
    Uses a familiar ASP.NET data source control architecture
    Implements the DataSourceControl pattern introduced with ASP.NET 2.0
    Bind against a LINQ enabled data model
    Declaratively bind to ASP.NET controls
  • 72. IIS7 Integration
    2 Processing Modes:
    Classic Mode
    For IIS6 compatibility
    Integrated Mode
    Can process all requests
    Enhanced functionality
    Higher fidelity notifications
  • 73. Tools for Designing and Developing Silverlight Applications
    Microsoft Expression Studio
    Expression Design
    Expression Blend
    Expression Encoder
    Microsoft Visual Studio
    Silverlight Tools Alpha Refresh for Visual Studio
  • 74. Architecture of Silverlight
    Core presentationframework
    .NET Framework for Silverlight
  • 75. Conclusion
    ASP.NET is innovation for the Web
    AJAX
    LINQ for simple Data
    IIS7 - New Web Server for ASP.NET!
    Visual Studio 2008, most productive IDE
    Get the latest news, releases, training, videos and tutorials at www.asp.net !
  • 76. © 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.