Download presentation
Presentation is loading. Please wait.
Published byVirginia Smith Modified over 9 years ago
1
Preview of ASP.NET 2.0 in Delphi Course #3182 Jim Tierney Principal Engineer - Borland
2
ASP.NET 2.0 Feature Overview Agenda Overview of many ASP.NET 2.0 features Preliminary description of Highlander support for ASP.NET 2.0
3
ASP.NET 2.0 Features ( Covered in this presentation) Master Pages and Content Pages Themes and Skins Data Binding Code Separation Special Directories Build Process Precompilation Application Services Project migration
4
New for Highlander Webform designer support for Master Pages, Content Pages, Themes and Skins BDP DataSource ECO DataSource Delphi language support for partial classes Delphi Code DOM Provider Directory-based projects Use ASP.NET 2.0 build services BDP support for application services
5
ASP.NET 2.0 Features Master Pages and Content Pages Themes and Skins Data Binding Code Separation Special Directories Build Process Precompilation Application Services Project migration
6
Master Pages and Content Pages Master Pages allow you to apply the same layout to multiple content pages. Typically a Master page has some markup that will be reused across multiple content pages (such as a heading) and one or more asp:contentplaceholder controls that indicate where content pages can insert additional markup. Content pages reference a single master page. A content page contains one or more asp:content controls. The markup within an asp:content control is merged with the master page at runtime.
7
Master Page Sample file: MasterPage.Master Untitled Page Sample heading Sample footing New Directive New directive New file extension New master page control
8
Content Page Sample File: Default2.aspx Sample content New attribute New content page controlReference to control in master Merge with master
9
Master and Content Page Demo
10
Master Pages in Highlander New Gallery items Webform designer support for master and content pages See merged content Read only areas on content pages
11
ASP.NET 2.0 Features Master Pages and Content Pages Themes and Skins Data Binding Code Separation Special Directories Build Process Precompilation Application Services Project migration
12
Themes Customize the look of a web application A collection of.skin and or.css files in a folder WebSite1 app_Themes Professional1 Pro1.skin Pro2.skin BasicBlue Blue.css BluePages.skin BlueControls.skin Project directory Special directory for themes Directory name is the theme name The.skin files and stylesheets (.css) make up the theme (image files are also common)
13
.skin files Contains one or more Default skins Applies to all controls of that type Named skins Applies to controls that reference the id
14
Using Themes and Skins test default skin test named skin Reference to named skin Reference to theme Will use default asp:label skin in the BasicBlue theme
15
Highlander Support for Themes and Skins New Gallery Items Webform designer renders using themes
16
ASP.NET 2.0 Features Master Pages and Content Pages Themes and Skins Data Binding Code Separation Special Directories Build Process Precompilation Application Services
17
ASP.NET 2.0 DataSource Controls Represent different backend sources Asp:SqlDataSource Asp:XMLDataSource Asp:ObjectDataSource Asp:AccessDataSource Replacement for non-visual data components used in ASP.NET 1.1 DataSet, DataTable, SqlConnection, SqlDataAdapter, SqlCommand Built in data manipulation Sorting, paging, filtering, updating, deleting, inserting
18
Highlander and Data binding Design time support for standard Datasource controls Design time support is part of the framework (rather than built into VS.NET)! Query builder Connection editor New Borland Datasource controls EcoDataSource DataSource component to bind to Eco objects BDPDataSource DataSource component to connect to BDP databases
19
ASP.NET 2.0 Features Master Pages and Content Pages Themes and Skins Data Binding Code Separation Special Directories Build Process Precompilation Application Services
20
Code Separation ASP.NET 1.1 Codebehind Codebehind is supported by ASP.NET 2.0 and ASP.NET 1.1 (but not by VS.NET 2005) ASP.NET 2.0 Codebeside Codebeside is new to ASP.NET 2.0 and not compatible with ASP.NET 1.1
21
Code Separation Codebehind and Codebeside Similarities Page consists of a markup file (e.g.;.aspx) and code file (e.g.;.cs or.pas) Markup file contains html and asp control markup Code file contains event handlers for asp controls (e.g.; Button1Click, PageLoad) ASP.NET runtime compiles markup files Generates a page class derived from the page class in the code file Compiles the generated code into temporary assemblies
22
Code Separation Differences Document Directives Codebehind Codebeside Compilation of code files (e.g.;.cs) Codebehind IDE compiles all code files into a single assembly (i.e.; the codebehind assembly) Codebeside ASP.NET runtime compiles code files at the same time that markup files are compiled Code file structure Codebehind Includes declarations for asp controls in the code file (e.g.; system.web.ui.button button1;) Declares event handlers as private members InitializeComponent function assigns event handlers to asp control event properties Codebeside Declares a partial page class No need for asp control declarations in code file The declarations will be generated into a class fragment when the ASP.NET runtime compiles the markup Event handlers are declared as protected Event handlers associated with event properties in the markup file
23
Code Separation Demo
24
Highlander and Code Separation Support codebeside for C# Support codebeside for Delphi New Delphi language syntax Class fragment Delphi Code DOM provider is required because markup and.pas file are compiled into the same assembly Highlander may support codebehind projects
25
ASP.NET 2.0 Features Master Pages and Content Pages Themes and Skins Data Binding Code Separation Special Directories Build Process Precompilation Application Services
26
Special Directories Folders in the project directory that have special meaning to the ASP.NET runtime /Bin was the only ASP.NET 1.1 “special directory”
27
Special Directories (Partial list) Bin Contains assemblies required to build the app app_code Contains.cs and.pas files that are not associated with a markup file app_webreferences .wsdl and.disco files created by Add Web Reference… command No code files (code is automatically generated as part of the asp.net runtime build process) app_data Application data files such as .xml data files mdf database files app_themes Theme directories .skin files
28
Highlander and Special Directories Support directory-based ASP.NET projects No.bdsproj or.dpr file All files in the project directory are part of the project File/Open/Web Site… prompts for a directory rather than project file Assembly references are declared in web.config rather than a project file Projects created by VS.NET open in Highlander without changes Project created by Highlander open in VS.NET without changes
29
ASP.NET 2.0 Features Master Pages and Content Pages Themes and Skins Data Binding Code Separation Special Directories Build Process Precompilation Application Services Localization Resources Control designer features Mobile Device Support Project migration
30
Build Process ASP.NET 1.1 Code must be generated by a tool Web service proxies Typed data sets Assemblies must be built by a tool Code behind assembly Resource assemblies ASP.NET runtime processes markup files only Generates code (e.g.; c#) Compiles generated code, referencing assemblies in /bin ASP.NET 2.0 ASP.NET runtime processes markup files similar to 1.1 In addition, scans the files in the project directory, automatically performing code generation and compilation for many file types Code files (.cs using codedom providers registered in machine.config and web.config) Localization resources (.resx using resgen.exe) Web Services (.wsdl,.discomap using wsdl.exe) Typed data sets (.xsd using xsd.exe)
31
Build Process Demo
32
Codedom Providers Codedom providers are similar in 1.1 and 2.0 Two responsibilities Convert a codedom into source code ASP.NET runtime generates a codedom from markup Other tools generate codedoms Wsdl import tool (wsdl.exe) Xsd import tool (xsd.exe) to generate typed data sets Compile code into an assembly ASP.NET 2.0 runtime relies more heavily on codedom providers Compile codebeside associated with web forms, user controls and web services Compile source files in /code directory Generate and compile code Wsdl import Xsd import Strongly typed resources (See Localization Resources topic) User profile classes (See Application Services topic)
33
Highlander and Build Process Use ASP.NET build services to verify syntax of project files Verifies all files that will be built by the ASP.NET runtime, not just code files Finds markup file (.aspx) syntax errors Finds web.config errors
34
ASP.NET 2.0 Features Master Pages and Content Pages Themes and Skins Data Binding Code Separation Special Directories Build Process Precompilation Application Services Project migration
35
Precompilation Batch compiles all pages in the site Improves performance the first time the website is accessed Two types of precompilation In-place precompilation Equivalent to browsing to all the pages in the app Invoked with special URL http::/localhost/WebSite1/Precompile.axd Precompilation for Deployment Removes source code to protect IP Can choose to remove markup or leave in place so that it can be customized later Invoked using aspnet_compiler.exe aspnet_compiler -v / -p
36
Highlander and Precompilation Precompilation commands within the IDE Deployment manager support for copying precompiled projects over FTP
37
ASP.NET 2.0 Features Master Pages and Content Pages Themes and Skins Data Binding Code Separation Special Directories Build Process Precompilation Application Services Project migration
38
Application Services “Provider Model” pattern Types of providers Provider Implementations Web site configuration tool
39
Provider Model Pattern Multiple provider types Each type has a well defined interface Allows for different implementation of a provider type Use SQLServer User defined class Web application code is independent of provider implementation Web.config defines implementation of provider Assembly name Class name ASP.NET infrastructure responsible for instantiating provider defined in web.config
40
Types of Providers Membership Provider User names, passwords, password hints Profile Provider User profile (e.g.; shopping cart) Personalization Provider User personalization (e.g.; preferred background color) Role Provider List of names Associate roles with users to deny users access to parts of web site
41
Provider Implementations MS implementations declared in machine.config <add name="AspNetSqlRoleProvider“ connectionStringName="LocalSqlServer" applicationName="/" type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> <add name="AspNetWindowsTokenRoleProvider“ applicationName="/" type="System.Web.Security.WindowsTokenRoleProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> <add name="AspNetAccessProvider" connectionStringName="AccessFileName" applicationName="/" type="System.Web.Security.AccessRoleProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> Web Site Configuration Tool Use to select an implementation from machine.config or web.config Updates web.config SQLServer setup SQLServer setup wizard Aspnet_regsql.exe Creates or configures a SQLServer database to store information for ASP.NET application services Aspnetdb is default database names Tables include asp_profile, asp_user, asp_roles
42
Web Site Configuration Tool Modifies web.config Select provider implementations Invokes providers Role Provider Edit roles Membership provider Edit users
43
Highlander and Application Services Launch Web Site Configuration Tool from IDE BDP Provider implementations Tool to create database and tables BDP provider assemblies Delphi Installer declares BDP providers in machine.config Allows web site administration tool to select BDP providers Deployment manager deploys BDP provider assemblies
44
ASP.NET 2.0 Features Master Pages and Content Pages Themes and Skins Data Binding Code Separation Special Directories Build Process Precompilation Application Services Project migration
45
Project Migration Opening a Delphi 2005 project in Highlander Conversion Move files to special directories Convert codebehind to codebeside Change to partial classes Remove declarations of controls for code file Declare event handlers as protected Backward compatibility Support codebehind Designer has component tray
46
Summary New for Highlander Directory-based projects Use ASP.NET 2.0 build services Delphi language support for partial classes Delphi Code DOM Provider Borland BDP Providers for application services BDP DataSource ECO DataSource Webform designer support for Master Pages, Content Pages, Themes and Skins
47
Thank You Questions? Steve Trefethen’s blog http://blogs.borland.com/stevet/
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.