Index

Symbols

$.ajax call, 1779

@Director parameter, 512

$(document).ready( ) method, jQuery, 1773–1774

/ (forward slash), 1124

$get( ) method, 1754

@Id parameter, 512

$( ) method, jQuery, 1773–1774

%@ OutputCache % directive, 1337, 1369

CacheProfile attribute, 1361

Location attribute, 1349, 1351

VaryByControl attribute, 1342, 1344

VaryByCustom attribute, 1346–1349

VaryByHeader attribute, 1345–1346

VaryByParam attribute, 1338, 1342

~ (tilde character), 1124

@Title parameter, 512

_ (underscore character), 730

A

a templates, PagerTemplate, 509

Abandon( ) method, 1284–1285

About.asax file, 1092–1093

absolute cache expiration policy, 1376–1377

absolute expiration policy, Data Caching, 1390–1392

absolute layouts, 288–290

Absolute.css file, 288–290

Accept Changes button, 906

Accept-Language headers, 1428

AcceptChanges( ) method, 902

accepting

form input, 1507–1509

user input. See user input, accepting

access. See also data access

controllers, 1506

WCF Data Services, 1001

data context, 1007–1009

service references, 1002–1007

access modifiers, 743–744

AccessDataSource control, 351, 379

accessibility guidelines

GridView control, 487

labels, 65

AccessibleHeaderText property (BoundField), 525

AccessKey property

Button control, 85

CheckBox control, 78

ImageButton control, 93

ImageMap control, 110

LinkButton control, 88

RadioButton control, 81

TextBox control, 70

Accordion control, 1737

ActionUrl property (PostBackOptions class), 1614

Activate event

View control, 220

WizardStep, 227

Active Directory Application Mode (ADAM), 1240–1242

ActiveDirectoryMembershipProvider, 1226, 1239, 1242–1244

ActiveStep property (Wizard control), 226

ActiveStepChanged event, 227

ActiveStepIndex property (Wizard control), 226

ActiveViewChanged event, 220

ActiveViewIndex property (MultiView control), 220

AD LDS instances, creating, 1240

ADAM (Active Directory Application Mode), 1240–1242

AdCreated event, 207, 214

AdCreated event handler, 214–215

Add Extender task, 1735

Add New Item command (Website menu), 5, 722

Add New Item dialog box, 373

Add( ) method, 984, 1387

AddAttribute( ) method, 1580, 1582

AddAttributesToRender( ) method, 1586, 1616

AddDesignTimeCssAttributes( ) method, 1639

Added value, 901

AddFile( ) method, 193

AddFileDependencies( ) method, 1353

AddFileDependency( ) method, 1353

adding

automatic properties, 937

comments, 745

entities, 1006

event handlers, 24

GridView control, 487

items to caches, 1390

Login controls, 1157

Menu items, 1021–1024

service references, 1003

SiteMapPath controls, 1015

SqlDataSource control, 487

titles to charts, 706

AddMovie.aspx page, 1354–1355

AddMovieDataSourceKeyDependency.aspx page, 1386

AddMovieKeyDependency.aspx page, 1357

AddOnPreRenderCompleteAsync( ) method, 917

AddParameter.aspx page, 426, 428

AddParsedSubObject( ) method, 1619, 1626

addresses (email), validating, 151, 153

AddressForm control, 311, 315, 317

AddressForm.ascx, 311, 315

Checkout.ascx example, 315, 317

AddStyleAttribute( ) method, 1580

AddUsersToRole( ) method, 1258

AddUsersToRoles( ) method, 1258

AddUserToRole( ) method, 1258

AddUserToRoles( ) method, 1258

AddValidationCallback( ) method, 1358

AddWithValue( ) method, 863–864

AdHandler.ashx page, 216

AdList.xml file, 211–212

AdminUsersSection class, 1553

AdminUsersSection.cs file, 1553

ADO.NET

asynchronous ASP.NET pages, 914, 917

asynchronous database commands, 911–912, 914

Command object, 859

executing commands with parameters, 863–864

executing commands without parameters, 860, 862

executing stored procedures, 865–872

returning resultsets, 876–881

returning single values, 874, 876

Connection object, 848–849

Connection pooling, 856–858

provider statistics, retrieving, 849–856

DataAdapter object, 889

batch updates, performing, 892–893, 896

displaying data with, 890, 892

populating DataTables with, 889–890

DataReader object, 881

Multiple Active Results Sets (MARS), 888

multiple resultsets, returning, 882, 884

Read( ) method, 881

DataSet object, 908, 911

DataTable object, 896

building programmatically, 896, 898

DataRow states and versions, 901, 903, 906

DataRows, selecting, 898, 901

DataView object, 906

parameters, adding to SqlDataSource commands, 426, 428

AdRotator control, 214, 1336

AdCreated event, 207

displaying advertisements, 207–208

properties, 207

storing advertisements in database tables, 212–213

storing advertisements in XML files, 208–212

AdList.xml file, 211–212

AdRotatorXML.aspx page, 208

tracking impressions and transfers, 213–219

AdHandler.ashx page, 216

AdRotatorStats.aspx page, 218

AdRotatorTrack.aspx page, 214

AdRotatorDatabase.aspx page, 212

AdRotatorStats.aspx page, 218

AdRotatorTrack.aspx page, 214

AdRotatorXML.aspx page, 208

AdStats database table, 215

AdvancedCheckBox control

AdvancedCheckBox.cs file, 1614

ShowAdvancedCheckBox.aspx page, 1616

AdvancedCheckBox.cs file, 1614

AdvertisementFile property (AdRotator control), 207

advertisements

displaying, 207–208

impressions and transfers, tracking, 213–219

AdHandler.ashx page, 216

AdRotatorStats.aspx page, 218

AdRotatorTrack.aspx page, 214

storing in database tables, 212–213

storing in XML files, 208–212

AdList.xml file, 211–212

AdRotatorXML.aspx page, 208

Aggregate( ) method, 951

AggregateCacheDependency class, 1394

AJAX (Asynchronous JavaScript and XML), 317, 320, 578

debugging, 1675–1677

jQuery. See jQuery

overview of, 1674–1675

paging through data with, 578–579

paging through GridView data, 503–504

server-side versus client-side, 1675

sorting data with, 496–497

Timer controls, 1724–1728

TreeView controls, 1066–1067, 1070

UpdatePanel control, 1677–1685

aborting current asynchronous postbacks, 1710

canceling current asynchronous postbacks, 1707, 1709

execution life cycles, 1697–1707

handling errors, 1714–1717, 1720

JavaScript, 1694–1697

nesting, 1688, 1692

passing current asynchronous postbacks, 1712, 1714

performance, 1720, 1723–1724

triggers, 1686–1687

updating, 1692–1693

UpdateProgress controls, 1728–1729, 1731

Web services, calling, 1776–1781

AJAX Control Toolkit, 1734, 1736

controls, 1737–1739

Animation, 1759, 1761, 1763–1764

AutoComplete, 1739–1750

DragPanel, 1750–1751, 1754

FilteredTextBox, 1754, 1756

MaskedEdit, 1756, 1758–1759

UpdatePanelAnimation, 1764–1768

Ajax Request file, 1720

Ajax Response file, 1720

AjaxPaging.aspx page, 503–504

AjaxSorting.aspx page, 496–497

AjaxValidator control, 167

AjaxValidator.js file, 173–174

AjaxValidator.cs file, 171

ShowAjaxValidator.aspx page, 174

AjaxValidator.js file, 173–174

AjaxValidator.cs file, 171

AjaxValidatorEvaluateIsValid( ) function, 173–174

AjaxValidatorResult( ) method, 174

alert boxes, displaying, 165–166

All value, 1054

allowAnonymous attribute, 1298, 1303–1304

allowCustomSqlDatabase attribute, 1297

AllowPaging property (GridView control), 501, 503

AllowReturn property (WizardStep control), 227

AllowSorting property (GridView), 495–496

AllowWhiteSpaceLiterals( ) method, 1626

ALTER DATABASE command, 1409

AlternateText property

Image control, 105

ImageButton control, 93

ImageField, 543

ImageMap control, 110

AlternateTextField property (AdRotator control), 207

AlternatingItemStyle property (DataList control), 657

AlternatingItemTemplate property (TemplateField), 546

AlternatingItemTemplate template, 627, 645, 662, 664

AlternatingRowStyle property (DetailsView control), 601

alternative text for images, 90

AlwaysVisibleControl control, 1737

analysis, Chart control, 698, 700–701, 704

And( ) method, 984

Animation control, 1737, 1759–1764

anonymous functions, 1775

anonymous HTTP Handlers, creating, 1478–1481

IHttpAsyncHandler interface, 1478

RSSHandler.cs file, 1479

ShowRSSHandler.aspx page, 1481

Web.Config file, 1480

Anonymous Identification, 1303

anonymous profiles, 1306–1308

anonymous types, 940

anonymous users, supporting in Profiles, 1303–1307

anonymousIdentification configuration section, 1515

Answer ID, 1180

Any value, 1349

AppendCacheExtension( ) method, 1358

AppendDataBoundItems property (List controls), 450, 452

appending list items, 450, 452

AppendListItems.aspx page, 451

AppendLiteralString( ) method, 1626

AppendTrailingSlash( ) method, 1135

AppInitialize( ) method, 1135

Application.init event, 1700

Application.load event, 1700

Application.unload event, 1700

ApplicationLoadEventArgs, 1704

applications

AJAX. See AJAX

architecture, 757

Business Logic layer, 761, 765

Data Access layer, 765, 769

multi-tier applications, building, 757–758

User Interface layer, 758–761

configuring for Polling SQL cache dependencies, 1402–1403

configuring for Push SQL cache dependencies, 1410

databases, deploying, 1571–1572

dynamic data, 1491–1492

building, 1492, 1494, 1496

templates, 1496–1497, 1500

importing, 1568

localizing, 1419–1420

applying Localize controls, 1450–1452

ASP.NET controls, 1433–1434

configuring cultures manually, 1421–1428

CultureInfo class, 1434–1438

deleting cultures automatically, 1428, 1431–1432

global resources, 1446–1450

local resources, 1438–1445

UICulture property, 1420–1421

web configuration files, 1432–1433

MVC Framework, 1501

accepting form input, 1507, 1509

controllers, 1502

creating, 1502, 1504–1505

models, 1502

pages, 1505–1507

views, 1502

one-click, 1572–1573

packaging, 1565–1566, 1568

reading configuration sections from, 1524–1527

ShowConfigApp.aspx page, 1524–1525

ShowConfigPath.aspx page, 1528

ShowConfigRelative.aspx page, 1525, 1527

URL routing, 1137–1139, 1143–1146

linking to other pages with routes, 1142–1143

mapping, 1139–1142

scenarios, 1139

Web.config file transformations, 1569–1571

Application_BeginRequest( ) handler, 1485

Application_Start( ) event handler, 1091

Application_Start( ) method, 1523

ApplyAppPathModifier( ) method, 1290

ApplyFormatInEditMode property (BoundField), 525

applying

constrained routes, 1144–1145

partial classes, 42

Visual Web Developer, 40

appSettings configuration, 1521

appSettings element (web.config file), 1520, 1522–1523

AppSettings property

Configuration class, 1536

WebConfigurationManager class, 1523

appSettings.config file, 1523

AppSettingsExpressionBuilder class, 1464

App_Code folder, mixing different language components, 725–726

App_CodeAutoSiteMapProvider.cs file, 1106, 1109

App_CodeMovie1.cs file, 845

App_CodeSqlSiteMapProvider.cs file, 1111, 1114

App_GlobalResources folder, 1447

App_Themes folder, 270

App_ThemesStyleThemeSimpleStyle.css file, 281–282

App_WebReferences folder, 780

architecture, 757

Business Logic layer, 761, 765

Data Access layer, 765, 769

multi-tier applications, building, 757–758

User Interface layer, 758–761

archive.xml file, 1567

areas

charts, 690, 694

plotting, customizing, 704–708

Argument property (PostBackOptions class), 1614

arrays, initializers, 941

Article control, 1649

Article.cs file, 1648

implementing on pages, 1650

Article.cs file, 1648

ArticleWithDefault control

ArticleWithDefault.cs file, 1652

implementing on pages, 1655

ArticleWithDefault.cs file, 1652

ascending sorts, 496

ASP.NET configuration sections

custom configuration sections, creating, 1546–1549

ConfigurationProperty attribute, 1548

validators, 1548

web.config registration, 1549

encrypted configuration sections, 1556–1557

creating programmatically, 1558, 1561

creating with aspnet_regiis command, 1557–1558

deploying, 1561–1564

DpapiProtectedConfigurationProvider, 1557

RsaProtectedConfigurationProvider, 1557

list of, 1515–1517

modifying, 1539, 1541–1542

reading from current application, 1524–1525, 1527

ShowConfigApp.aspx page, 1524–1525

ShowConfigPath.aspx page, 1528

ShowConfigRelative.aspx page, 1525, 1527

ASP.NET Framework installation, 55–56

ASP.NET Membership. See Membership

ASP.NET pages

code-behind pages, 39–43

FirstPageCodeBehind.aspx page, 40–41

FirstPageCodeBehind.aspx.cs file, 41

partial classes, 42

presentation pages, 41–43

when to use, 43

control trees, 38–39

creating, 5, 8–9

debugging, 48, 50, 52

dynamic compilation, 34–35, 37

page events, handling, 44–46

page execution lifestyle, 44

Page.IsPostBack property, 46, 48

tracing, 52–55

ASP.NET parameters, DataSource controls, 353, 355

ASP.NET SQL Server Setup Wizard, 1238, 1326

ASPNetSurvey.aspx control, 326–327

aspnet_compiler.exe tool, 34

aspnet_regiis command, 290, 389, 1237, 1533, 1557–1558

aspnet_regsql tool, 1326, 1401–1402

ASPSurvey.aspx control, 325–326

assemblies, 14, 17

adding to Bin folder, 753

adding to Global Assembly Cache, 754–757

definition of, 724

private, 15

referencing, 16–17

shared, 15

AssemblyBuilder class, 1455

AssemblyInfo.cs file, 755

assigning users to roles, 1249

AssociatedControlID property, 63–65

AssociatedUpdatePanelID property, 1731

associations, entities, 959–960

AsyncDataLayer component, 913–914

AsyncDataLayer.cs file, 913–914

AsyncFileUpload control, 1737

asynchronous ASP.NET pages, 914, 917

asynchronous database commands, 911–914

Asynchronous JavaScript and XML. See AJAX

asynchronous postbacks, 1707–1714

attacks, XPath Injection Attacks, 1246

attributeMapFailedPasswordAnswerCount( ) method, 1244

attributeMapFailedPasswordAnswerLockoutTime( ) method, 1244

attributeMapFailedPasswordAnswerTime( ) method, 1244

attributeMapPasswordAnswer( ) method, 1244

attributeMapPasswordQuestion( ) method, 1244

Attributes property (ListItem control), 441

Authenticate event, 1161

Authenticate( ) method, 1161, 1217, 1220

AuthenticateEventArgs class, 1161

authentication, 1149

custom authentication, Login control, 1160–1161

Forms authentication, 1206–1207

across applications, 1210–1214

across domains, 1214–1216

configuring, 1207–1208

cookieless Forms authentication, 1209–1210

enabling, 1148–1149

encryption and validation options, 1211–1214

FormsAuthentication class, 1216–1220

sliding expiration, 1210

User class, 1220–1221

Login controls, 1147

.NET Passport authentication, 1206

Windows authentication, 1206

authentication configuration section, 1515

AuthenticationType property (Identity object), 1221

authorization, 1149

configuring, 1221, 1223

by file location, 1224–1225

.gif image files, 1225

with images and other file types, 1225

by role, 1223

authorization configuration section, 1515

Authorization Manager, 1254

AuthorizationStoreRoleProvider, 1247, 1254–1256

AutoComplete class, 72, 74

AutoComplete control, 1737–1750

AutoCompletePageMethod.aspx page, 1740

AutoCompleteTextValue.aspx page, 1746

AutoCompleteType property (TextBox control), 70

AutoCompleteWebService.aspx page, 1744

AutoDetect, 1209–1210, 1289

AutoEventWireUp, 46

Autoformat, 719

AutoGenerateColumns property (GridView control), 525

AutoGenerateDeleteButton property, 597

AutoGenerateInsertButton property, 594

AutoGeneratePassword property (CreateUserWizard control), 1171

AutoGenerateSelectButton property (GridView control), 491

automatic postbacks (List controls), 452, 454

automatic properties, 730, 936

automatically saving Profiles, 1317, 1320

AutoPostBack property, 454

CheckBox control, 78–79

List controls, 452, 454

PostBackOptions class, 1614

RadioButton control, 81–83

TextBox control, 70–72

AutoPostBackListControl.aspx page, 453–454

AutoSiteMapProvider, 1106, 1109–1110

App_Code/AutoSiteMapProvider.cs file, 1106, 1109

Web.Config file, 1110

AutoSync property, 953

AutoUpgrade parameter, 232

Average( ) method, 951

AxisY axis, 700

B

BackColor property, 61, 704

BackGradientStyle property, 704

Background parameter, 232

backgrounds, Chart Control, 704, 706, 708

BackSecondaryColor property, 704

Bagus.aspx page, 1421–1422

bar charts, 694

base classes, 1575–1576

custom LINQ to SQL, 991–995, 999–1000

BaseValidator class, 167

batch updates, performing with SqlDataAdapter object, 892–893, 896

BeginExecuteNonQuery( ) method, 912

BeginExecuteReader( ) method, 912

BeginExecuteXmlReader( )method, 912

BeginGetMovies( ) method, 912

beginHandler parameter, 916

BeginProcessRequest( ) method, 1479–1480

BeginRequest event, 1129

BeginRequestEventArgs, 1703

BetterProfileProvider, 1327, 1329

BetterProfileProviderReport.aspx page, 1332

ShowBetterProfileProvider.aspx page, 1329

web.config file, 1328

BetterProfileProviderReport.aspx page, 1332

Bin folder, adding assemblies to, 753

Binary value, 1314

BinaryWrite( ) method, 189

Bindable design-time attribute, 1632

binding, 488. See also DataBound controls; DataSource controls

controls, 348, 351, 353

declarative databinding, 356

DivView control to SqlDataSource control, 1670–1671

List controls, 341

declarative databinding, 442–443

programmatic databinding, 443, 446

Menu controls

to database data, 1035, 1040

to Site Maps, 1027, 1029, 1031

to XML files, 1031–1034

ObjectDataSource control

to components, 772, 774

to DataReaders, 774–776

to DataSets, 776–778

to Web Services, 779–780, 783

programmatic databinding, 356, 358

simplified databinding, supporting in templated controls, 1656–1660

TreeView controls

to database data, 1061, 1064

to Site Maps, 1057–1058

to XML files, 1058–1059, 1061

two-way databinding, supporting in templated controls, 1660, 1663, 1666

binding containers, 1652

BLL/Product.cs file, 762, 765

Blog.aspx page, 1141

BodyFileName property (MailDefinition class), 1167

BodyTitle property, 259

BorderColor property (Label control), 61

BorderSkin-SkinStyle property, 704

BorderStyle property (Label control), 61

BorderWidth property (Label control), 61

BoundField class, 522–524, 526

BoundField fields, 571

BoundFields display, 571

BoundGridView.aspx file, 352–353

box plots, 694

breakpoints

configuring, 52

settings, 51

Browsable design-time attribute, 1632

browserCaps configuration section, 1516

browsers

cookies. See cookies

varying output cache by, 1346–1347

btnAdd_Click( ) method, 458, 1318

btnRemove_Click( ) method, 458

btnSearch_Click( ) method, 955

btnSubmit_Click( ) handler, 25, 28

BuffersReceived statistics, 854

BuffersSent statistics, 854

Build Deployment Package option, 1567

building pages with QueryExtender controls, 717, 719

BuildProviders, 1454

DataBuildProvider, 1458, 1461–1462, 1464

App_CodeMovie.data, 1458

DataBuildProvider.vb, 1463

movie.data.72cecc2a.vb, 1459

ShowDataBuildProvider.aspx, 1462

SimpleBuildProvider, 1454, 1456–1458

CodeDom, 1455

CodeSnippetCompileUnit, 1455

implementing on pages, 1457–1458

Mike class, 1456–1457

registering, 1456

SimpleBuildProvider.cs file, 1454

Web.Config file, 1456

BuildSiteMap( ) method, 1106, 1109, 1114

BuildTree( ) method, 911

BulletedList control, 101, 338, 470–474

BulletStyle property, 471

DisplayMode property, 473

ShowBulletedList.aspx page, 470–471

ShowBulletedListHyperLinks.aspx page, 474

ShowBulletedListImage.aspx page, 472–473

BulletStyle property (BulletedList control), 471

Business Logic layer, 761, 765

Button control, 84, 86, 101, 283, 454, 1158, 1614

Click event, 86

handling, 22, 25–28

client scripts, 94–95

Command event, 86, 101, 103

cross-page posts, 96, 98, 100

displaying on pages, 84

events, 86

Focus( ) method, 86

properties, 85

ButtonCommand.aspx page, 101

ButtonCounters.aspx page, 25–26

ButtonDefaultButton.aspx page, 100–101

ButtonExpando.aspx page, 95

ButtonField class, 522, 530, 533

ButtonField fields, 571

ButtonOnClientClick.aspx page, 94

buttons

Button control, 84, 86

Click event, 86

client scripts, 94–95

Command event, 86, 101, 103

cross-page posts, 96, 98, 100

displaying on pages, 84

events, 86

Focus( ) method, 86

properties, 85

default buttons, specifying, 100–101

ImageButton control, 89–93

Click event, 93

client scripts, 94–95

Command event, 93, 101, 103

cross-page posts, 96, 98, 100

displaying on pages, 89–90

Focus( ) method, 93

image maps, 91–92

properties, 93

LinkButton control, 86, 88–89

Click event, 89

client scripts, 94–95

Command event, 89, 101, 103

cross-page posts, 96, 98, 100

displaying on pages, 86–87

events, 89

Focus( ) method, 89

properties, 88–89

RadioButton control, 79, 82–83

automatic postback, 82–83

CheckedChanged event, 82

displaying on pages, 79

Focus( ) method, 82

properties, 81

ButtonSearch.aspx page, 96

ButtonSearchResults.aspx page, 97

ButtonSearchResultsTyped.aspx page, 99

ButtonSearchTyped.aspx page, 98

ButtonType property

ButtonField, 533

CommandField, 529

By CSS Class element, 1774

By Element element, 1774

By ID element, 1774

BytesReceived statistics, 854

BytesSent statistics, 854

C

C#, new features, 936, 938–939

anonymous types, 940

automatic properties, 936–937

extension methods, 948–949

generics, 941–944

initializers, 937–939

lambda expressions, 944–947

LINQ, 949–951

type inference, 939–940

cache. See also caching

caching database data with SqlDataSource control, 435, 437

GAC (Global Assembly Cache), 15

adding assemblies to, 754–755, 757

SQL cache

configuring/enabling, 1114

dependencies, 1399–1400

cache element, 1397

Cache object, 437, 1387, 1389

Cache-Control header, 1349

Cache-Control HTTP header, 1351

Cached property (ControlCachePolicy class), 1370

CacheDependency class, 1394

CacheDuration property, 1377

CacheItemPriority enumeration, 1396

CacheLocation.aspx page, 1350–1351

CachePageOutput.aspx page, 1337

CacheProfile attribute (%@ OutputCache % directive), 1361

cacheRolesInCookie attribute (web.config file), 1257

CacheSqlDataSource.aspx page, 435

caching, 1335–1336. See also cache

Data Caching, 1336, 1387

absolute expiration policy, 1390, 1392

adding items to cache, 1390

cache configuration, 1397

cache item priorities, 1396

Cache object, 1387, 1389

dependencies, 1394–1396

Polling SQL cache dependencies, 1406–1407

Push SQL cache dependencies, 1415–1416

sliding expiration policy, 1393–1394

DataSource Caching, 1336, 1375–1376

absolute cache expiration policy, 1376–1377

DataSource control key dependencies, 1383, 1385

ObjectDataSource control, 1380, 1382

Polling SQL cache dependencies, 1405–1406

Push SQL cache dependencies, 1412, 1414

sliding cache expiration policy, 1378–1379

XmlDataSource control, 1382–1383

Page Output Caching, 1336–1337

%@ OutputCache % directive, 1337

CachePageOutput.aspx sample page, 1337

expiring programmatically, 1353–1357

file dependencies, 1351, 1353

HttpCachePolicy class, 1358–1360

Polling SQL cache dependencies, 1403–1404

profiles, 1360–1361

Push SQL cache dependencies, 1411–1412

specifying cache location, 1349, 1351

varying output cache by browser, 1346–1347

varying output cache by control, 1342, 1344

varying output cache by custom functions, 1347, 1349

varying output cache by header, 1345–1346

varying output cache by parameter, 1338–1342

Partial Page Caching, 1336, 1361–1362

caching dynamically loaded User Controls, 1373, 1375

ControlCachePolicy class, 1370–1371

file dependencies, 1372

post-cache substitution, 1362–1366

sharing User Control output cache, 1370

User Controls, 1366–1369

Polling SQL cache dependencies, 1399–1400

configuring applications for, 1402–1403

configuring databases for, 1400–1402

Data Caching, 1406–1407

DataSource Caching, 1405–1406

Page Output Caching, 1403–1404

Push SQL cache dependencies, 1408–1409

configuring applications for, 1410

configuring databases for, 1409–1410

Data Caching, 1415–1416

DataSource Caching, 1412, 1414

Page Output Caching, 1411–1412

records, 970

caching configuration section, 1516

Calendar control, 1737

calendars, displaying, 197

culture settings, 1433–1434

displaying calendars with, 195–196

multiple dates, selecting, 198–199

pop-up calendars, creating, 199

properties, 197–199

rendering calendars from databases, 202, 206–207

Calendar.skin file, 279

CalendarDatabase.aspx page, 203, 206

CalendarJS.aspx page, 200

calendars

displaying, 195–197

events, 197

multiple dates, selecting, 198–199

pop-up calendars, creating, 199

properties, 197–199

rendering from databases, 202, 206–207

CallbackValidator, 1548

calling

stored procedures, 933

Web services, 1776–1781

CanBeNull property, 953

CancelButtonClick event, 227

CancelCommand.aspx page, 404–405

CancelDestinationPageUrl property (Wizard control), 226

CancelImageUrl property (CommandField), 529

canceling command execution, 403, 406

CancelText property (CommandField), 530

candlestick charts, 694

Cascading Style Sheets. See CSS (Cascading Style Sheets)

CascadingDropDown control, 1737

CascadingDropDownsAjax.aspx page, 1681

CascadingDropDownsNoAjax.aspx page, 1679

Case Animation, 1763

catching roles in cookies, 1256–1258

Category design-time attribute, 1632

CategoryId property, 960

CausesValidation property

ButtonField, 533

CommandField, 530

CC property (MailDefinition class), 1167

Cells property (GridViewRow object), 549

changefreq element, 1117

ChangePassword control, 1186–1192

emails, sending, 1188, 1190

ShowChangePassword.aspx page, 1186, 1188

templates, 1190, 1192

ChangePassword( ) method, 1231

ChangePassword.txt file, 1189

ChangePasswordEmail.aspx page, 1189

ChangePasswordQuestionAndAnswer( ) method, 1231

ChangePasswordTemplate.aspx page, 1191–1192

Chart control, 689–690

background and plotting areas, 704–708

displaying data with, 690–694

drill-down reports, 709–710

filtering, 694–698

sorting, 694–698

statistical formulas, 698, 700–701, 704

three-dimensional charts, 708

Chart functionality, 692

ChartAppearance.aspx page, 705

charts

areas, 690

lines, viewing, 692

three-dimensional, 708

types of, 694

check boxes, TreeView control, 1054, 1057

CheckBox control, 76–77, 79

automatic postback, 78–79

CheckedChanged event, 78

displaying in forms, 76–77

Focus( ) method, 78

properties list, 78

CheckBoxAutoPostBack.aspx page, 78–79

CheckBoxField class, 522, 526–527

CheckBoxField fields, 571

CheckBoxList control, 79, 338, 467–470

Checked property

CheckBox control, 78

RadioButton control, 81

TreeNode object, 1073

CheckedChanged event, 78, 82

CheckFileType( ) method, 184

Checkout.aspx file, 315, 317

checkPhysicalUrlAccess parameter, 1146

ChildNodes property (SiteMapNode class), 1093

Children property, 1134

ChildrenAsTriggers property, 1685

chtMovies_DataBound method, 694

CircleHotSpot class, 106

classes. See components; names of specific classes

Clear( ) method, 1284

ClearAllPools( ) method, 857

ClearPool( ) method, 857

ClearSelection( ) method, 458

Click event, 91

Button control, 86

handling, 22–28

ImageButton control, 93

ImageMap control, 111

LinkButton control, 89

Client value, 1349

client-side Ajax, 1675

client-side validation functions, associating with CustomValidator control, 156, 158

ClientLifecycle.aspx page, 1701

clients, calling Web services, 1776–1781

ClientSubmit property (PostBackOptions class), 1614

clientTarget configuration section, 1516

ClientValidationFunction property (CustomValidator control), 154

Clone( ) method, 1093

CloseConnection parameter (CommandBehavior object), 880

CLR (Common Language Runtime), 17–18

CLR integration, 918

CMS (Content Management System), 1123

code declaration blocks, 8

code-behind pages, 39, 41–43

FirstPageCodeBehind.aspx page, 40–41

FirstPageCodeBehind.aspx.cs file, 41

partial classes, 42

presentation pages, 41–43

when to use, 43

CodeConfirmation.htm file, 1175

CodeDom, 1455

CodeSnippetCompileUnit, 1455

CollapseImageToolTip property (TreeView control), 1070

CollapseImageUrl property (TreeView control), 1070

CollapsiblePanel control, 1737

collections

configuration element collections, creating, 1551–1555

AdminUsersSection class, 1553

ShoppingCartSection class, 1551–1552

ShowAdminUsersSection.aspx page, 1556

web.config file, 1552, 1554

control property collections, 1618

AddParsedSubObject( ) method, 1626

ContentRotator control example, 1618, 1620–1621

ControlBuilder class, 1626, 1629, 1631

ImageRotator control example, 1623, 1625

ItemRotator control example, 1621

ParseChildren attribute, 1618–1619, 1622, 1624–1625

ShowItemRotator.aspx page, 1622–1623

DeleteParameters, 783

FilterParameters, 783

initializers, 941

InsertParameters, 783

SelectParameters, 783

UpdateParameters, 783

Color Animation, 1764

ColorEditor, 1632

ColorPicker control, 1737

colors, rendering table of HTML colors, 1581–1582

ColorTable control, 1583

ColorTable.cs file, 1581–1582

column summaries, displaying (GridView control), 550, 552

columns, selecting, 965

Columns property (TextBox control), 70

Combine( ) method, 1135

CombineVirtualPaths( ) method, 1133

ComboBox control, 1737

Command class, 844

Command event, 101, 103

Button control, 86

ImageButton control, 93

LinkButton control, 89

Command object. See SqlCommand object

CommandArgument property

Button control, 85

ImageButton control, 93

LinkButton control, 88

PagerTemplate, 611

CommandField class, 522, 527, 529–530

CommandField fields, 571

CommandName property, 622, 672, 1158

Button control, 85

ButtonField, 533

ImageButton control, 93

LinkButton control, 88

PagerTemplate, 611

CommandRowStyle property (DetailsView control), 601

commands, executing. See also names of specific commands

database commands

canceling command execution, 403, 406

data source mode, changing, 397–398

database rows, filtering, 395–397

error handling, 398–403

GridViewHandleError.aspx page, 401–402

HandleError.aspx page, 399–400

inline SQL statements, 389, 391–392

stored procedures, 392, 395

SqlDataSource commands, 426

ADO.NET parameters, 426, 428

Delete command, 428

Insert command, 428, 430

Select command, 428–435

Update command, 428

Comment property (MembershipUser class), 1231

comments, adding, 745

Common Language Runtime. See CLR (Common Language Runtime)

Compare( ) method, 1437

CompareAllValues, 828

CompareValidator control, 121, 146–151

ControlToCompare property, 146

ControlToValidate property, 146

data type checks, performing, 146

Display property, 127–128

form fields

comparing against another form field, 150

comparing against fixed values, 148

implementing on OrderForm page, 122, 124–125

IsValid property, 126–127

Operator property, 146

Text property, 146

Type property, 146

ValueToCompare property, 146

comparing string values, 1437–1438

compilation

component libraries, 750

vbc command-line compiler, 750–751

Visual Basic .NET Express, 751

Visual Studio .NET 2005, 752

dynamic compilation, 34–35, 37, 724–725

compilation configuration section, 1516

compilation element (web.config file), 1520

CompilationMode attribute, 35

complex profile properties, creating, 1310–1311, 1314–1316

component libraries, 749

compiling

with vbc command-line compiler, 750–751

with Visual Basic .NET Express, 751

with Visual Studio .NET 2005, 752

referencing assemblies

adding to Bin folder, 753

adding to Global Assembly Cache, 754–755, 757

components, 721

access modifiers, 744

accessing Profiles from, 1321–1322

AggregateCacheDependency, 1394

ASP.NET intrinsic objects in, 746–749

assemblies, 14, 17

adding to Bin folder, 753

adding to Global Assembly Cache, 754–755, 757

definition of, 724

private, 15

referencing, 16–17

shared, 15

AuthenticateEventArgs, 1161

AutoComplete, 72, 74

BaseValidator, 167

binding to ObjectDataSource control, 772, 774

BuildProviders, 1454–1464

CacheDependency, 1394

CircleHotSpot, 106

component libraries, 749–757

Configuration, 1536–1537

ConflictedMovies, 830–831

constructors, 733–736

Control, 1576

ControlBuilder, 1626, 1629–1631

ControlCachePolicy, 1370–1371

creating, 722, 724

CultureInfo, 1434–1438

custom components, inheriting profiles from, 1308–1309

data access. See data access components

DBMovie, 920

definition of, 722

different language components, mixing in App_Code folder, 725–726

DpapiProtectedConfigurationProvider, 1557

dynamic compilation, 724–725

EmployeeData, 791–793

EmployeesDSSorting, 810

ExpressionBuilders, 1464–1469

FieldHelloWorld, 728–729

fields

declaring, 728–731

shared fields, 733

File, 10

FilterMovies, 815–816

FormsAuthentication, 1216–1220

Framework Class Library. See Framework Class Library

Graphics, 10

Guestbook, 820

HelloWorld, 722, 724

HtmlTextWriter, 1580–1584

HTTP Handlers, 1470

anonymous HTTP Handlers, 1478–1481

Generic Handlers, creating, 1470–1473

IHttpHandler interface, 1475–1476

IHttpHandler interface, implementing, 1473

HttpApplication, 1482–1483

custom HTTP Modules, creating, 1487–1489

Global.asax files, 1483, 1485

HttpCachePolicy, 1358–1360

HttpCookie, 1272–1273

HttpPostedFile, 180

HttpSessionState, 1284–1285

inheritance, 739–741

InsertMovie, 824–825

Intellisense, 744, 746

interfaces, declaring, 742–743

MailDefinition, 1167

Membership, 1227–1230

MembershipProvider, 741

MembershipUser, 1230–1231

methods

declaring, 726–728

overloading, 734–736

shared methods, 726, 728

signatures, 735

Movie, 1382

Movie4, 865–868

Movie5, 870–872

MovieCollection, 772–773

MovieDataReader, 774–775

MovieDataSet, 776–778

Movies, 783, 785–786

MoviesByCategory, 826–827

MoviesDSPaging, 800–802

MustInherit classes, 739–741

namespaces, declaring, 736–738

PagePropertyParameter, 838–839, 841

partial classes, 42, 738

PolygonHotSpot, 106

PostBackOptions, 1613, 1616

Preferences, 747, 749

ProductConstructor, 736

ProfileManager, 1323, 1325

properties

declaring, 728–731

shared properties, 733

PropertyHelloWorld, 730–731

Quote, 734

Random, 10

RandomDataLayer, 931–933

RandomRows, 929

RectangleHotSpot, 106

Roles, 1258

RsaProtectedConfigurationProvider, 1557, 1562, 1564

ServerTime, 731

ServerValidateEventArgs, 155

SharedHelloWorld, 726–728

SiteMap, 1090–1093

SiteMapNode, 1093–1095

SmtpClient, 10, 12

SqlCacheDependency, 1394

SqlCacheDependencyAdmin, 1400

SqlConnectionStringBuilder, 848

SqlPipe, 928

User, 1220–1221

UsernameParameter, 835–837

viewing in Framework Class Library, 10

VirtualPathProvider, 1132–1135

WebConfigurationManager, 1523–1524

WebControl, 1576, 1584, 1586–1587

composite controls, building, 1587–1589

implementing on pages, 1588

RequiredTextBox.cs control, 1587

CompositeControl class, 1576

concatenating strings, 863

concurrency issues

data updates, 591–593

GridView control, 512–514

ObjectDataSource control, 828, 832

Concurrency.aspx page, 512–513, 591–592

Condition Animation, 1763

Condition( ) method, 984

CONFIG folder, 1512

configuration, 1511. See also Configuration API

ActiveDirectoryMembershipProvider, 1239, 1242–1244

ADAM (Active Directory Application Mode), 1240, 1242

authorization, 1221, 1223

AuthorizationStoreRoleProvider, 1254–1256

of breakpoints, 52

Data Caching, 1397

encrypted configuration sections, 1556–1557

creating programmatically, 1558, 1561

creating with aspnet_regiis command, 1557–1558

deploying, 1561–1564

DpapiProtectedConfigurationProvider, 1557

RsaProtectedConfigurationProvider, 1557

Forms authentication, 1207–1208

Profile providers, 1326–1327

Session state, 1291

Session state stores, 1290–1291

Site Maps

custom attributes, 1103–1105

merging, 1101–1102

Security Trimming, 1096–1098, 1100

SQL Server Session state, 1294–1297

SqlMembershipProvider, 1237–1239

SqlRoleProvider, 1247–1248, 1250–1252

State Server Session state, 1291–1294

web configuration files, storing connection strings in, 386–387

website configuration, 1511, 1513. See also Web.config file

ASP.NET configuration sections, 1515–1517

configuration settings, applying to particular paths, 1517–1518

configuration settings, locking, 1518, 1520

configuration settings, placing in external files, 1522–1523

custom application settings, 1520, 1522

Machine.config file, 1511

Microsoft Management Console (MMC) Snap-In, 1514

Web Site Administration Tool, 1513–1514

Web.config file, 1512

WindowsTokenRoleProvider, 1252–1254

Configuration API, 1523–1524

Configuration class, 1536–1537

configuration element collections, creating, 1551–1555

AdminUsersSection class, 1553

ShoppingCartSection class, 1551–1552

ShowAdminUsersSection.aspx page, 1556

web.config file, 1552, 1554

configuration files, opening

on remote servers, 1533–1534, 1536

on same server, 1529–1530, 1533

configuration sections, modifying, 1539, 1541–1542

configuration sections, reading from current application, 1524–1525, 1527

ShowConfigApp.aspx page, 1524–1525

ShowConfigPath.aspx page, 1528

ShowConfigRelative.aspx page, 1525, 1527

custom configuration sections, creating, 1546, 1548–1549

ConfigurationProperty attribute, 1548

validators, 1548

web.config registration, 1549

new websites, provisioning, 1543, 1546

WebConfigurationManager class, 1523–1524

Configuration class, 1536–1537

configuration element collections, creating, 1551–1555

AdminUsersSection class, 1553

ShoppingCartSection class, 1551–1552

ShowAdminUsersSection.aspx page, 1556

web.config file, 1552, 1554

configuration files, 1511, 1513. See also Machine.config file; web.config file

opening on remote servers, 1533–1536

opening on same server, 1529–1530, 1533

ShowConfigMachine.aspx page, 1529–1530

ShowConfigSites.aspx page, 1531

ConfigurationProperty attribute, 1548–1549, 1554

ConfigurationSaveMode parameter (Save( ) method), 1541

confirm( ) method, 622

confirmation codes, entering, 1175

ConfirmButton control, 1737

ConfirmCode.aspx page, 1176

ConfirmPassword ID, 1180, 1192

ConflictDetection property, 591

ObjectDataSource control, 828

SqlDataSource control, 513

ConflictedMovies component, 830–831

ConflictedMovies.cs file, 830–831

connected data access. See data access components

connecting to databases, SqlDataSource control, 380

connection strings, encrypting, 388–389

connection strings, storing in Web.Config file, 386–387

ODBC, 384

OLE DB, 384

Oracle, 384, 386

SQL Server, 380, 382–384

Connection class, 844

Connection object. See SqlConnection object

Connection Reset, 857

connection strings

encrypting, 388–389

security, 382

storing in Web.Config file, 386–387

Connection Timeout, 857

connectionPassword( ) method, 1243

connectionProtection attribute, 1243

connectionProtection( ) method, 1243

connections

Ajax

asynchronous postbacks, 1707–1714

debugging, 1675–1677

execution life cycles, 1697–1707

handling errors, 1714–1717, 1720

JavaScript, 1694–1697

overview of, 1674–1675

performance, 1720, 1723–1724

server-side versus client-side, 1675

Timer controls, 1724–1728

UpdatePanel control, 1677–1682, 1685–1688, 1692–1693

UpdateProgress control, 1728–1731

WCF Data Services, 1001

data context, 1007–1009

service references, 1002–1007

connectionStringName attribute, 1243

connectionStringName( ) method, 1243

ConnectionStrings property

Configuration class, 1536

WebConfigurationManager class, 1523

ConnectionStringsExpressionBuilder class, 1465

connectionUsername( ) method, 1243

ConnectOracle.aspx page, 385

Constant( ) method, 984

constrained routes, 1144–1145

constructors

declaring, 733–734

overloading, 734–736

shared constructors, 734

container ControlDesigners, creating, 1636, 1639–1640

Container keyword, 1652

containers

binding containers, 1652

key containers

creating, 1562

exporting contents to XML files, 1563

granting access to, 1563

web.config file, 1562

Content control, 242

Content folder, 1504

Content Management System. See CMS (Content Management System)

ContentLength property (FileUpload control), 180

ContentPlaceHolder controls, 239–240, 242

ContentRotator control

ContentRotator.cs file, 1618

ShowContentRotator.aspx page, 1620–1621

ContentRotator.cs file, 1618

ContentTemplateContainer property, 1686

ContentType property (FileUpload control), 180

context connections, 928

Control class, 1576

Control State, 33

supporting in custom controls, 1599

ControlStateControl.vb, 1599

ShowControlState.aspx page, 1601

ControlBuilder class, 1626, 1629, 1631

methods, 1626

ServerTabs control example, 1626, 1629–1631

ControlCachePolicy class, 1370–1371

ControlDesigners, 1636

container ControlDesigners, creating, 1636, 1639–1640

Smart Tasks, 1640, 1644

ControlFilterExpression, querying, 712

ControlID property (ControlParameter object), 410

controllers

access, 1506

MVC Framework, 1502

Controllers folder, 1504

ControlParameter object, 353, 410–412, 414

ObjectDataSource control, 787

properties, 410

ShowControlParameter.aspx page, 410–411

ShowPageControlParameter.aspx page, 413–414

controls, 19. See also events

AdRotator, 207–219, 1336

AdvancedCheckBox, 1614–1616

AJAX Control Toolkit, 1737–1739

Animation, 1759–1764

AutoComplete, 1739–1750

DragPanel, 1750–1751, 1754

FilteredTextBox, 1754–1756

MaskedEdit, 1756–1759

UpdatePanelAnimation, 1764–1768

AjaxValidator, 171–174

Article, 1648–1650

ArticleWithDefault, 1652, 1655

binding, 348, 351

Button, 84–86, 1614

Click events, handling, 22, 25–28

client scripts, 94–95

Command event, 86, 101, 103

cross-page posts, 96–100

Calendar, 195–199

culture settings, 1433–1434

rendering calendars from databases, 202, 206–207

ChangePassword, 1186–1192

Chart Control. See Chart Control

CheckBox, 76–79

CheckBoxList, 79

ColorTable, 1583

CompareValidator, 121

ContentPlaceHolder, 240, 242

ContentRotator, 1618–1621

Control State, 33

control trees, 38–39

ControlDesigners, 1636

container ControlDesigners, creating, 1636, 1639–1640

Smart Tasks, 1640, 1644

CreateUserWizard, 1162

adding steps to, 1181–1183

automatically generating passwords, 1171–1174, 1177

configuring form fields, 1163–1166

properties, 1162–1163

redirecting users, 1169–1170

sending email messages, 1166–1169

templates, 1177–1181

culture settings, 1433–1434

custom controls, 1576

CustomLinkButton, 1606–1610

CustomTextBox, 1602–1605

CustomValidator, 122

DataBound. See DataBound controls

DataGrid, 342, 485

DataList. See DataList controls

DataPager, 681–688

DataSource. See DataSource controls

declaring standard controls, 20

design-time attributes, 1631–1635

DetailsView. See DetailsView controls

DivView, 1667–1671

DropDownList, setting cultures, 1423, 1425

EntityDataSource, 994

FileUpload, 180

saving files to database, 185, 188–190, 193

saving files to filesystem, 181, 184

uploading large files, 189–195

FormView, 604, 977

deleting data with, 619, 621–622

displaying data with, 605–606

editing data with, 612–616

inserting data with, 616–619

paging through data with, 607–609, 612

GradientPanel, 1637–1639

GridView. See GridView controls

HTML controls, declaring, 21–22

HtmlMeta, 258

HyperLink, 118–119

Image, 104, 106

ImageButton. See ImageButton controls

ImageMap, 106–111

ImageRotator, 1623–1625

ItemRotator, 1621–1623

Label, 60–65

LengthValidator, 168–169

LinkButton. See LinkButton controls

LinqDataSource, 960, 962–963

List. See List controls

ListView. See ListView controls

Literal, 65–68

Localize, 1450–1451

Login. See Login controls

LoginName, 1185–1186

LoginStatus, 1183, 1185

LoginView, 1199–1203

Menu. See Menu controls

modifying in Master Pages, 261–263

MovieDataSource, 832–833, 835

MovieView, 1633–1635

MultiView. See MultiView controls

navigation, 1016

NewsRotator, 1364

ObjectDataSource. See ObjectDataSource controls

Pager, 1610–1613

Panel, 101, 111–118, 1347

Partial Page Caching, 1366–1367, 1369

PasswordRecovery, 1193–1199

Product, 1657–1659

ProductForm, 1661, 1663

QueryExtender, 711–719

RadioButton, 79–83, 111

RadioButtonList, 83

RangeValidator, 121

RegularExpressionValidator, 122

Repeater, 623–633, 640

ServerTabs, 1626, 1629–1631

SiteMapDataSource, 1084

binding Menu controls to, 1087–1088

binding TreeView controls to, 1085–1086

Default.aspx page, 1085–1086

Products/Default.aspx page, 1089

properties, 1086–1090

Services/Default.aspx page, 1087

Web.sitemap file, 1084–1085

SiteMapPath, 1013

declaring in pages, 1013, 1015

formatting, 1016, 1018–1020

properties, 1015–1016

templates, 1018–1020

SmartImage, 1640, 1644

SqlDataSource. See SqlDataSource control

SqlHierarchicalDataSource, 1011, 1077

classes, 1080–1081

ShowMenu.aspx page, 1078–1079

ShowTreeView.aspx page, 1079

Substitution, 1362–1363

templated controls, 1647–1648

default templates, creating, 1652–1655

ITemplate interface, implementing, 1648–1652

simplified databinding, supporting, 1656–1660

two-way databinding, supporting, 1660, 1663, 1666

templated databound controls, 1666

base classes, 1667

DivView, 1667, 1670–1671

TextBox. See TextBox controls

Timer, Ajax, 1724–1726, 1728

TreeView. See TreeView controls

UpdatePanel. See UpdatePanel controls

UpdateProgress, Ajax, 1728–1729, 1731

User. See User controls

validation controls. See validation controls

ValidationSummary, 122, 162, 166

Display property, 127–128

implementing on OrderForm page, 122, 124–125

IsValid property, 126–127

varying output cache by, 1342, 1344

View, 220

View State, 28–33

Wizard, 226–228, 231

XmlDataSource, DataSource caching, 1382–1383

ControlStateControl.cs file, 1599

ControlToCompare property (CompareValidator control), 146

ControlToValidate property

CompareValidator control, 146

CustomValidator control, 154

RangeValidator control, 144

RequiredFieldValidator control, 139

Convert( ) method, 984

ConvertEmptyStringToNull property

BoundField, 525

Parameter object, 406

COOKIE header, 1210, 1264

CookieDomain property (FormsAuthentication class), 1216

cookieless attribute (sessionState element), 1289

cookieless configuration option (Forms authentication), 1207

cookieless Forms authentication, 1209–1210

cookieless Session state, 1288–1290

CookieMode property

FormsAuthentication class, 1216

HttpSessionState class, 1284

cookieName attribute, 1257

CookieName property (CookieParameter object), 415

CookieParameter object, 353, 415, 417

ObjectDataSource control, 787

properties, 415

Vote.aspx page, 415

cookiePath attribute, 1257

cookieProtection attribute, 1257

cookieRequireSSL attribute, 1257

cookies, 1264–1265

catching roles in, 1256–1258

creating, 1266, 1268–1269

deleting, 1273–1275

HttpCookie class, 1272–1273

multi-valued cookies, 1275, 1278–1279

creating, 1275

reading, 1278–1279

persistent cookies, 1264, 1268–1269

properties, 1272–1273

reading, 1269–1270, 1272

security restrictions, 1265–1266

session cookies, 1264, 1266, 1268

cookieSlidingExpiration attribute, 1257

CookiesSupported property (FormsAuthentication class), 1216

cookieTimeout attribute, 1257

copying

encrypted configuration files, 1561

URLs, 1137

Count property

Cache object, 1387

HttpSessionState class, 1284

Count( ) method, 951

counting user sessions, 1287

CountMoviesInCategory stored procedure, 392

Create, 1492

Create Deployment Package as a ZIP File option, 1567

CREATE PROCEDURE command, 931

Create Project dialog box, 1502

CREATE TYPE command, 924

Create( ) method, 943

CreateChildControls( ) method, 1587, 1590, 1650, 1654, 1659, 1669

createPersistentCookie attribute, 1257

CreateQuery( ) method, 1004

CreateRole( ) method, 1258

CreateSpecificCulture( ) method, 1434

CreateUser( ) method, 1227, 1245

CreateUserWizard control, 1151, 1162, 1165–1166

adding steps to, 1181, 1183

automatically generating passwords, 1171–1174, 1177

CodeConfirmation.htm file, 1175

ConfirmCode.aspx page, 1176

CreateUserWizardCodeConfirmation.aspx page, 1173

CreateUserWizardPasswordConfirmation.aspx page, 1172

PasswordConfirmation.htm file, 1173

configuring form fields, 1163, 1165–1166

properties, 1162–1163

redirecting users, 1169–1170

CreateUserWizardReturn.aspx page, 1170

LoginReturn.aspx page, 1169

sending email messages, 1166–1169

templates, 1177, 1179, 1181

CreateUserWizardCodeConfirmation.aspx page, 1173

CreateUserWizardEmail.aspx page, 1166

CreateUserWizardExtra.aspx page, 1181, 1183

CreateUserWizardPasswordConfirmation.aspx page, 1172

CreateUserWizardReturn.aspx page, 1170

CreateUserWizardShort.aspx page, 1165–1166

CreateUserWizardTemplate.aspx page, 1178–1180

CreationDate property (MembershipUser class), 1231

credentials element, 1218

cross-page posts, 96, 98, 100

cryptographically strong keys, generating, 1214

CSS (Cascading Style Sheets), 199

adding to Themes, 281–284

App_ThemesStyleThemeSimpleStyle.css file, 281–282

multiple Cascading Style Sheets, 285

ShowSimpleCSS.aspx file, 282–283

changing page layouts with, 285–290

absolute layouts, 288, 290

Absolute.css file, 288, 290

Float.css file, 287–288

floating layouts, 287–288

ShowLayout.aspx file, 285, 287

CSS Zen Garden, 290

Internet Explorer extensions, 1584

Login controls, 1154

Master Pages, 240

Themes. See Themes

transition filters, 627

CSS Zen Garden, 290

CssClass property

DataList control, 657

DetailsView control, 601

GridView control, 519

Label control, 61

Culture property, 1420–1421

CultureInfo class, 1434

comparing and sorting string values, 1437–1438

formatting string values, 1435–1436

methods, 1434

cultures

Culture property, 1420–1421

CultureInfo class, 1434

comparing and sorting string values, 1437–1438

formatting string values, 1435–1436

methods, 1434

detecting automatically, 1428, 1431–1432

SelectCultureAuto.aspx page, 1431–1432

ShowAcceptLanguages.aspx page, 1430

effect on ASP.NET controls, 1433–1434

global resources

creating, 1446, 1448

retrieving programmatically, 1448–1449

strongly typed localization expressions, 1449–1450

local resources, 1438

explicit localization expressions, 1438–1441

implicit localization expressions, 1441–1443

page properties, 1443–1444

retrieving programmatically, 1444–1445

Localize control, 1450–1451

names, 1420

neutral cultures, 1420

setting in web configuration files, 1432–1433

setting manually, 1421–1423, 1425, 1428

%@ Page % directive, 1421–1422

DropDownList control, 1423, 1425

profiles, 1425, 1427

web configuration files, 1427–1428

specific cultures, 1420

UICulture property, 1420–1421

current URL, determining, 1125

Current value, 901

CurrentNode property (SiteMap class), 1090

CurrentNodeStyle object, 1016

CurrentNodeTemplate, 1018

CurrentPassword ID, 1192

CursorsOpen statistics, 854

custom algorithms, 698

custom attributes, Site Maps, 1103–1105

custom authentication, Login control, 1160–1161

custom components, inheriting profiles from, 1308–1309

custom configuration sections, creating, 1546, 1548–1549

ConfigurationProperty attribute, 1548

validators, 1548

web.config registration, 1549

custom configuration settings, 1520, 1522

custom controls, 1576

AddressForm control, 311, 315, 317

AddressForm.ascx, 311, 315

Checkout.ascx example, 315, 317

AJAX (Asynchronous JavaScript and XML), 317, 320

ASPNetSurvey control, 326–327

ASPSurvey control, 325–326

base classes, 1575–1576

collections, 1618

AddParsedSubObject( ) method, 1626

ContentRotator control example, 1618, 1620–1621

ControlBuilder class, 1626, 1629, 1631

ImageRotator control example, 1623, 1625

ItemRotator control example, 1621

ParseChildren attribute, 1618–1619, 1622, 1624–1625

ShowItemRotator.aspx page, 1622–1623

composite controls, building, 1587–1589

implementing on pages, 1588

RequiredTextBox.cs control, 1587

Control State, supporting, 1599

ControlStateControl.vb, 1599

ShowControlState.aspx page, 1601

ControlDesigners, 1636

container ControlDesigners, creating, 1636, 1639–1640

Smart Tasks, 1640, 1644

creating, 300–302

design-time attributes, 1631–1635

exposing events from, 307, 309, 311

exposing properties from, 304–306

PropertyRandomImage.ascx file, 304–305

ShowDeclarative.ascx file, 305

ShowProgrammatic.ascx file, 306

fully rendered controls, building, 1576, 1579–1581, 1584, 1587

FullyRenderedControl.cs file, 1577

FullyRenderedWebControl.cs file, 1578

HtmlTextWriter class, 1580–1584

ShowFullyRenderedControl.aspx page, 1577–1578

ShowFullyRenderedWebControl.aspx page, 1579–1580

WebControl TagKey property, 1584, 1586–1587

hybrid controls, building, 1590–1595

Login.cs file, 1590

LoginStandards.cs file, 1593

loading dynamically, 320–321

%@ Reference %> directive, 322, 325, 327

LoadControl( ) method, 320

multi-page wizards, creating, 327–329, 331, 336

ShowFeaturedProduct.aspx example, 320–321

MultiSelectList, 475

MultiSelectList.js, 481–482

MultiSelectList.vb, 475, 480

ShowMultiSelectList.aspx page, 482, 484

postback data, handling, 1602, 1604, 1606

CustomTextBox example, 160–1605

IPostbackDataHandler interface, 1602

LoadPostData( ) method, 1602, 1604

RaisePostDataChangedEvent( ) method, 1602, 1604

RegisterRequiresPostBack( ) method, 1604

postback events, handling, 1606–1616

CustomLinkButton example, 1606, 1608

event arguments, passing, 1610, 1613

IPostBackEventHandler interface, 1606, 1608

postback options, 1613, 1616

RaisePostBackEvent( ) method, 1606

PropertyRandomImage control, 304

RandomImage example

RandomImage.ascx, 300–301

ShowRandomImage.ascx, 301–302

RandomQuotation control

RandomQuotation.ascx, 318–319

ShowRandomQuotation.ascx, 319

registering in web configuration file, 303

TabStrip control

ShowTabStrip.ascx, 309, 311

TabClick event handler, 311

TabStrip.ascx, 307, 309

View State, supporting, 1596

ShowViewState.aspx page, 1598

ViewStateControl.cs file, 1596

custom fields, GridView control

DeleteButtonField, 560, 562–563

LongTextField, 556, 559–560

ValidatedField, 563–566

custom functions, varying output cache by, 1347, 1349

custom HTTP Modules, creating, 1487–1489

QueryStringAuthenticationModule.cs file, 1487

Web.Config file, 1488

custom LINQ to SQL base class, 991–995, 999–1000

custom membership providers, creating, 1244–1246

custom ObjectDataSource controls, creating, 832–833, 835

custom paging interface (GridView control), 504, 506, 509

PageGridPreviousNext.aspx page, 505–506

PageTemplateGrid.aspx page, 507, 509

custom parameter objects, creating, 835–837, 839, 841

page property parameters, 838–839, 841

username parameters, 835–837

custom Profile providers, creating, 1327–1331

custom sorting interface (GridView control), 497, 499, 501

custom validation controls, creating, 167

AjaxValidator control, 170, 173–174

AjaxValidator.js file, 173–174

AjaxValidator.cs file, 171

ShowAjaxValidator.aspx page, 174

BaseValidator class, 167

LengthValidator control, 168–170

LengthValidator.cs file, 168

ShowLengthValidator.aspx page, 169

Custom value, 1291

customErrors configuration section, 1516

CustomExpression, querying, 712

Customize Line Images, 1071

customizing

CreateUserWizard control, 1178

HttpApplication class, 1483

interfaces, 684, 686

Login controls, 1158

paging interface (DetailsView control), 580–583

PagerSettings class, 581

ShowPagerSettings.aspx page, 580–581

ShowPagerTemplate.aspx page, 582–583

CustomLinkButton control, 1610

CustomLinkButton.cs file, 1606

ShowCustomLinkButton.aspx page, 1608

CustomLinkButton.cs file, 1606

customProviderData attribute, 1298, 1309

CustomSorting.aspx page, 500–501

CustomTextBox control

CustomTextBox.cs file, 1602, 1604

ShowCustomTextBox.aspx page, 1605

CustomTextBox.cs file, 1602, 1604

CustomValidator control, 122, 148, 154

client-side validation functions, 156, 158

ClientValidationFunction property, 154

ControlToValidate property, 154

Display property, 127–128

empty form fields, validating, 158–159

implementing on OrderForm page, 122, 124–125

IsValid property, 126–127

ServerValidateEventArgs class, 155

string lengths, checking, 154, 156, 158

Text property, 154

timed tests, creating, 160

D

data access

binding controls, 348, 351

database-driven web application, 375–376

DataBound controls, 337

hierarchical DataBound controls, 345, 347–348

List controls. See list controls

one-way databinding expressions, 362–364, 366

tabular DataBound controls, 341–342, 345

templates, 359–360, 362

two-way databinding expressions, 366–368

DataSource controls. See DataSource controls

programmatic databinding, 356, 358

SQL Server 2005 Express, 369–370

connecting to, 372

Database Explorer, 370

keywords, 373

Local databases, 338, 373–374

Management Studio Express, 370

Server databases, 371–372

SQLCMD, 370–371

data access components, 843–845

AsyncDataLayer, 913–914

asynchronous ASP.NET pages, 914, 917

asynchronous database commands, 911–912, 914

building

Movie1.cs file, 845–846

ShowMovie1.aspx page, 847–848

CLR integration, 918

Command object, 859

executing commands with parameters, 863–864

executing commands without parameters, 860, 862

executing stored procedures, 865–872

returning resultsets, 876, 878–881

returning single values, 874, 876

Connection object, 848–849

Connection pooling, 856–858

provider statistics, retrieving, 849–856

data access layers, creating with user-defined types, 924, 926–927

DataAdapter object, 889

batch updates, performing, 892–893, 896

displaying data with, 890, 892

populating DataTables with, 889–890

DataLayer1

DataLayer1.cs file, 882

ShowDataLayer1.aspx page, 885

DataReader object, 881

Multiple Active Results Sets (MARS), 888

multiple resultsets, returning, 882, 884

Read( ) method, 881

DataSet object, 908, 911

DataTable object, 896

building programmatically, 896, 898

DataRow states and versions, 901, 903, 906

DataRows, selecting, 898, 901

DataView object, 906

DBDataLayer

DBDataLayer.cs file, 924–925

ShowDBDataLayer.aspx page, 926–927

Movie1

Movie1.cs file, 845–846

ShowMovie1.aspx page, 847–848

Movie2

Movie2.cs file, 850–851

ShowMovie2.aspx page, 852

Movie3

Movie3.cs file, 860, 862

ShowMovie3.aspx, 862

Movie6

Movie6.cs file, 877–878

ShowMovie6.aspx page, 878–879

Movie7

Movie7.cs file, 879

ShowMovie7.aspx page, 880

Movie8

Movie8.cs file, 890

ShowMovie8.aspx page, 891–892

Movie9

Movie9.cs file, 902

ShowMovie9.aspx page, 904, 906

stored procedures, creating, 928

CREATE PROCEDURE command, 931

executing from ASP.NET pages, 931–932

stored procedure assembly, creating, 928, 930

stored procedure assembly, registering, 930

user-defined types, creating with .NET Framework, 919

CREATE TYPE command, 924

user-defined type assembly, creating, 920, 923

user-defined type assembly, registering, 923

Data Access layer, 765, 769

creating with user-defined types, 924–927

Data Caching, 1336, 1387

absolute expiration policy, 1390, 1392

adding items to cache, 1390

cache configuration, 1397

cache item priorities, 1396

Cache object, 1387, 1389

dependencies, 1394–1396

Polling SQL cache dependencies, 1406–1407

Push SQL cache dependencies, 1415–1416

sliding expiration policy, 1393–1394

data context, applying WCF Data Services with, 1007–1009

data controls, 19

data keys, GridView control, 492–495

data points, 690

data source modes, changing, 397–398

data source paging, 503, 686, 688, 798–805

GetPagedMovies stored procedure, 803

GetPagedMovies2005 stored procedure, 805

MoviesDSPaging component, 800–802

ShowDSPaging.aspx page, 798–799

data source sorting, 808–809, 811–812

EmployeesDSSorting component, 810

GetSortedEmployees stored procedure, 811–812

ShowDSSorting.aspx page, 808–809

data sources, Connection objects, 848–849

Connection pooling, 856, 858

provider statistics, retrieving, 849–856

data types

user-defined types, creating data access layers with, 924, 926–927

user-defined types, creating with .NET Framework, 919

CREATE TYPE command, 924

user-defined type assembly, creating, 920, 923

user-defined type assembly, registering, 923

validating, 146

DataAdapter object, 888–889

batch updates, performing, 892–893, 896

displaying data with, 890, 892

populating DataTables with, 889

DataAlternateTextField property (ImageField), 543

DataAlternateTextFormatString property (ImageField), 543

Database Explorer (SQL Server), 370

database-driven web application, 375–376

databases. See also ADO.NET; data types

asynchronous ASP.NET pages, 914, 917

asynchronous database commands, 911–912, 914

binding Menu controls to, 1035, 1040

binding TreeView controls to, 1061, 1064

caching with SqlDataSource control, 435, 437

CLR integration, 918

command execution

canceling, 403, 406

data source mode, changing, 397–398

database rows, filtering, 395–397

error handling, 398, 400, 403

inline SQL statements, 389, 391–392

stored procedures, 392, 395

configuring

for Polling SQL cache dependencies, 1400–1402

for Push SQL cache dependencies, 1409–1410

connecting with SqlDataSource control, 380

connection strings, encrypting, 388–389

connection strings, storing in Web.Config file, 386–387

ODBC, 384

OLE DB, 384

Oracle, 384, 386

SQL Server, 380, 382–384

data filtering, 813–816

data source paging, 798–805

GetPagedMovies stored procedure, 803

GetPagedMovies2005 stored procedure, 805

MoviesDSPaging component, 800–802

ShowDSPaging.aspx page, 798–799

data source sorting, 808–809, 811–812

EmployeesDSSorting component, 810

GetSortedEmployees stored procedure, 811–812

ShowDSSorting.aspx page, 808–809

data, storing in Session state, 1281, 1284

database-driven web application, 375–376

deploying, 1571–1572

dta source connections. See SqlConnection object

editing, 675, 678–679, 681

records

deleting, 860, 862

updating, 860, 862

viewing, 664

rendering calendars from, 202, 206–207

rows, filtering, 395–397

saving files to, 185, 188–189

FileHandler.aspx page, 188–189

FileUploadDatabase.aspx page, 185, 187

large files, 190, 193

sorting, 672, 674

SQL Server Express, 1408

Local databases, 338, 373–374

Server databases, 371–372

standard commands, 964–990

storing advertisements in, 212–213

user interface paging, 795, 797–798

user interface sorting, 805, 807–808

DataBind( ) method, 358, 1004, 1652, 1670

DataBinder.Eval( ) method, 839, 1005

databinding. See binding

DataBinding event, 547, 598, 633

DataBinding event handler, 640

databinding expressions

one-way, 362–364, 366

two-way, 366–368

DataBound controls, 337

binding controls, 348, 351

binding to DataSource controls, 351, 353

DataList, 640

displaying data with, 640, 642–643

editing data with, 651, 656

formatting data with, 657, 659

multi-column tables, creating, 644–645

properties, 657

selecting data with, 648–651

templates, 645–646, 648

hierarchical DataBound controls, 345–348

Menu, 346

Movies.xml page, 347–348

ShowHierarchicalDataBound.aspx page, 346–347

TreeView, 346

list controls, 338, 341, 439

automatic postbacks, 452, 454

binding, 341

binding to data sources, 442–443, 446

BulletedList, 338, 470–471, 473–474

CheckBoxList, 338, 467, 469–470

DropDownList, 338, 458, 460

EasyListBox, 460

Items collection, 454, 458

list items, appending, 450, 452

list items, declaring, 439, 441

list items, reordering, 454, 458

ListBox, 338, 463, 465, 467

ListControl class, 439

ListItem class, 439, 441

MultiSelectList (custom control), 475, 480–482, 484

RadioButtonList, 338, 461–463

selected list items, determining, 446, 448–450

ShowListControls.aspx page, 339

one-way databinding expressions, 362–366

Repeater control, 623

displaying data with, 624–625, 627

events, 633, 640

templates, 627–633

tabular DataBound controls, 341–342, 345

DataList, 341

DetailsView. See DetailsView control

FormView, 342

GridView, 341

Repeater, 342

ShowTabularDataBound.aspx page, 343, 345

templated databound controls, 1666

base classes, 1667

DivView, 1667, 1670–1671

templates, 359–360, 362

two-way databinding expressions, 366–368

DataBound event, 547, 598

DataBuildProvider, 1458, 1461–1462, 1464

App_CodeMovie.data, 1458

DataBuildProvider.vb, 1463

movie.data.72cecc2a.vb, 1459

ShowDataBuildProvider.aspx, 1462

DataBuildProvider.cs file, 1463

DataColumn.Expression property, 397, 817

DataContext.ExecuteCommand( ) method, 983

DataContext.GetCommand( ) method, 990

|DataDirectory| keyword, 374

DataField property (BoundField), 525

DataFormatString property (BoundField), 525

DataGrid control, 342, 485. See also GridView control

DataImageUrlField property (ImageField), 543

DataImageUrlFormatString property (ImageField), 543

DataItem property

GridViewRow object, 549

IDataItemContainer interface, 1656

DataItemIndex property

GridViewRow object, 549

IDataItemContainer interface, 1656

DataKeyField property, 651

DataKeyNames property, 492, 512, 598, 979

DataLayer1 component

DataLayer1.cs file, 882

ShowDataLayer1.aspx page, 885

DataLayer1.cs file, 882

DataList control, 341, 640

displaying data with, 640, 642–643

RepeatLayout property, 643

ShowDataList.aspx page, 640, 642

ShowFlowDataList.aspx page, 643

editing data with, 651, 656

formatting data with, 657, 659

multi-column tables, creating, 644–645

properties, 657

selecting data with, 648–651

templates, 645–646, 648

AlternatingItemTemplate, 645

EditItemTemplate, 646

FooterTemplate, 646

HeaderTemplate, 646

ItemTemplate, 645

SelectedItemTemplate, 646

SeparatorTemplate, 645

ShowDataListTemplates.aspx page, 646, 648

DataManipulator property, 694

DataMember property (AdRotator control), 207

DataNavigateUrlFields property (HyperLinkField), 539

DataNavigateUrlFormatString property (HyperLinkField), 539

DataPager control, 681–683

data source paging, 686, 688

interfaces, customizing, 684, 686

DataPagerDataSource.aspx page, 686

DataPagerListView.aspx page, 682

DataPagerTemplate.aspx page, 684

DataReader class, 844

DataReader object, 397, 881

binding to ObjectDataSource control, 774–776

Multiple Active Results Sets (MARS), 888

multiple resultsets, returning, 882, 884

Read( ) method, 881

DataRows

selecting, 898, 901

states and versions, 901, 903, 906

DataSet object, 397, 889, 908, 911, 1281

binding to ObjectDataSource control, 776–778

DataSource Caching, 1336, 1375–1376

absolute cache expiration policy, 1376–1377

DataSource control key dependencies, 1383, 1385

ObjectDataSource control, 1380, 1382

Polling SQL cache dependencies, 1405–1406

Push SQL cache dependencies, 1412, 1414

sliding cache expiration policy, 1378–1379

XmlDataSource control, 1382–1383

DataSource controls, 351

AccessDataSource, 351

ASP.NET parameters, 353, 355

binding DataBound controls to, 351, 353

binding List controls to

declarative databinding, 442–443

programmatic databinding, 443, 446

ObjectDataSource, 351, 771

binding to components, 772, 774

binding to DataReaders, 774–776

binding to DataSets, 776–778

binding to Web Services, 779–780, 783

concurrency, 828, 832

custom ObjectDataSource controls, 832–833, 835

custom parameter objects, creating, 835–837, 839, 841

data filtering, 813–816

data source paging, 798–805

data source sorting, 808–809, 811–812

error handling, 822, 825

events, 817–822, 826–828

parameters, 783, 785, 789–790, 793–795, 818, 820, 822

properties, 772

user interface paging, 795, 797–798

user interface sorting, 805, 807–808

SiteMapDataSource, 351

SqlDataSource. See SqlDataSource control

XmlDataSource, 351

DataSource property (AdRotator control), 207

DataSourceAbsoluteCache.aspx page, 1376

DataSourceID property (AdRotator control), 207

DataSourceKeyDependency.aspx page, 1384–1385

DataSourceMode property, 1376

DataSourceSlidingCache.aspx page, 1378–1379

DataTable object, 889, 896

building programmatically, 896, 898

DataRow states and versions, 901, 903, 906

DataRows, selecting, 898, 901

populating with SqlDataAdapter object, 889–890

DataTextField property

ButtonField, 533

HyperLinkField, 539

DataTextFormatString property

ButtonField, 533

HyperLinkField, 539

DataView object, 889, 906, 1282

DataView.RowFilter property, 397, 817

DayNameFormat property (Calendar control), 197

DayRender event, 197, 207

DbCommand class, 845

DbConnection class, 845

DBDataLayer component

DBDataLayer.cs file, 924–925

ShowDBDataLayer.aspx page, 926–927

DBDataLayer.cs file, 924–925

DbDataReader class, 845

DBMovie class, 920

DBMovie.cs file, 920

DbType property, 953

Deactivate event

View control, 220

WizardStep, 227

debugging

Ajax, 1675–1677

ASP.NET pages, 48, 50, 52

checking if enabled, 1524–1525, 1527

disabling, 50

jQuery, 1770

LINQ to SQL, 987–988, 990

declarative databinding, 356, 442–443

DeclarativeDataBinding.aspx page, 442–443

declaring

constructors, 733–734

controls

HTML controls, 21–22

standard controls, 20

fields, 728–731

interfaces, 742–743

methods, 726–728

namespaces, 736–738

partial classes, 738

properties, 728–731

Decrypt( ) method, 1217

decryptionKey attribute, 1211, 1294, 1296

decryptionKey, generating, 1234

default buttons, specifying, 100–101

default content (Master Pages), 242

ContentPlaceHolder controls, 242

DefaultContent.aspx file, 245

DefaultMaster.master file, 242, 244

default namespaces, 14

default parameters, routes, 1143–1144

Default Skins, creating, 270

ShowSkin.aspx file, 271–272

SimpleTextBox.skin file, 270

default templates, creating, 1652–1656

Default value, 901

Default.aspx page, 1085, 1125–1126, 1130, 1132

DefaultButton property (Panel control), 114

DefaultContent.aspx file, 245

DefaultEvent design-time attribute, 1631

DefaultMaster.master file, 242, 244

DefaultMode property, 594

DefaultModel.RegisterContext method, 1494

DefaultProperty design-time attribute, 1631

defaultUrl configuration option (Forms authentication), 1207

DefaultUrl property (FormsAuthentication class), 1216

defaultValue attribute, 1298

DefaultValue design-time attribute, 1632

DefaultValue parameter, 1548–1549

DefaultValue property (Parameter object), 406

DefaultView property, 906

defining chart areas, 690

delete button fields, creating, 560, 562–563

Delete command, 428, 1492

Delete( ) method, 981

DeleteAllCookies.aspx page, 1274

DeleteButtonField class, 560, 562–563

DeleteButtonField.cs file, 561–562

DeleteCommand object, 892

DeleteCookie( ) method, 1257–1258

DeleteCookie.aspx page, 1273–1274

Deleted event, 398, 817

Deleted value, 901

DeleteImageUrl property (CommandField), 530

DeleteInactiveProfiles( ) method, 1323

DeleteMethod property (ObjectDataSource control), 772

DeleteParameters collection, 783

DeleteProfile( ) method, 1323

DeleteProfiles( ) method, 1323

DeleteRole( ) method, 1258

DeleteText property (CommandField), 530

DeleteUser( ) method, 1227

deleting

cookies, 1273–1275

data

DetailsView control, 597–598

FormView control, 619, 621–622

inactive profiles, 1324

LINQ to SQL, 981, 983

records, 860, 862

user locks, 1236

Deleting event, 403, 817

Demo folder, 1508

DemoController class, 1508

dependencies

Data Caching, 1394–1396

DataSource control key dependencies, 1383, 1385

key dependencies, 1355

Page Output Caching, 1351, 1353

Partial Page Caching, 1372

Polling SQL cache dependencies, 1399–1400

configuring applications for, 1402–1403

configuring databases for, 1400–1402

Data Caching, 1406–1407

DataSource Caching, 1405–1406

Page Output Caching, 1403–1404

Push SQL cache dependencies, 1408–1409

configuring applications for, 1410

configuring databases for, 1409–1410

Data Caching, 1415–1416

DataSource Caching, 1412, 1414

Page Output Caching, 1411–1412

SQL cache, 1399–1400

Dependency property (ControlCachePolicy class), 1370

deploying

databases, 1571–1572

encrypted web configuration files, 1561–1564

deployment configuration section, 1516

descending sorts, 496

description attribute, 1013

Description design-time attribute, 1632

Description property, 937, 1093

DescriptionUrl property, 106

Image control, 105

ImageButton control, 93

ImageMap control, 110

design-time attributes, applying to controls, 1631–1632, 1634–1635

DesignerActionList, 1644

DesignerSerializationVisibility design-time attribute, 1632

DestinationPageUrl property, 1155

Detached value, 901

Detail Form, 1491

Details page, viewing, 1341

Details.aspx page, 535, 1340–1341

DetailsView control, 342, 567, 594, 1354

deleting data with, 597–598

displaying data with, 567, 569, 571

ShowDetailsView.aspx page, 567, 569

ShowEmployee.aspx page, 569–570

displaying empty data with, 573–574, 576

ShowEmptyDataTemplate.aspx page, 574, 576

ShowEmptyDataText.aspx page, 573–574

events, 598–599, 601

fields, 571, 573

BoundField, 571

ButtonField, 571

CheckBoxField, 571

CommandField, 571

HyperLinkField, 571

ImageField, 571

ShowFields.aspx page, 571, 573

TemplateField, 571

formatting, 601–604

inserting data with, 593–596

ShowInsert.aspx page, 593

ShowInsertMode.aspx page, 594, 596

paging through data with, 576, 578

AJAX, 578–579

paging interface, customizing, 580–583

ShowPaging.aspx page, 576, 578

updating data with, 584–593

concurrency issues, 591–593

MasterDetailEdit.aspx page, 586, 588

ShowUpdate.aspx page, 584–585

templates, 588, 590–591

deviceFilters configuration section, 1516

Dhawan, Priya, 889

different language components, mixing in App_Code folder, 725–726

Direction property

Panel control, 114

Parameter object, 406

directives, 8. See also names of specific directives

%@ Import % directive, 13

%@ OutputCache % directive, 1337, 1369

CacheProfile attribute, 1361

Location attribute, 1349, 1351

VaryByControl attribute, 1342, 1344

VaryByCustom attribute, 1346–1349

VaryByHeader attribute, 1345–1346

VaryByParam attribute, 1338, 1342

%@ Page % directive, setting cultures, 1421

@Director parameter, 512

Director property, 977

Directories property, 1134

DirectoryExists( ) method, 1133

DisableCreatedUser property (CreateUserWizard control), 1172

disableExpiration attribute, 1397

disableMemoryCollection attribute, 1397

DisableNotifications( ) method, 1400

DisablePageTheme.aspx file, 280–281

DisableTableForNotification( ) method, 1400

DisableViewState.aspx page, 32–33

disabling

debugging, 50

Themes, 277, 279

ShowEnableTheming.aspx file, 277–278

Simple4Calendar.skin file, 279

validation, 138–139

View State, 32–33

DisappearAfter property (Menu control), 1040

disconnected data access, 888–889

DataAdapter object, 889

batch updates, performing, 892–893, 896

displaying data with, 890, 892

populating DataTables with, 889–890

DataSet object, 908, 911

DataTable object, 896

building programmatically, 896, 898

DataRow states and versions, 901, 903, 906

DataRows, selecting, 898, 901

DataView object, 906

Discrete Animation, 1764

Display property (validation controls), 127–128

DisplayAfter property, 1731

displayCalendar( ) method, 199

DisplayCancelButton property (Wizard control), 226

DisplayIndex property (IDataItemContainer interface), 1656

displaying data

Chart Control, 690–694

DataList control, 640, 642–643

RepeatLayout property, 643

ShowDataList.aspx page, 640, 642

ShowFlowDataList.aspx page, 643

DetailsView control, 567, 569, 571

empty data, 573–574, 576

ShowDetailsView.aspx page, 567, 569

ShowEmployee.aspx page, 569–570

FormView control, 605–606

GridView control, 486–487, 489

empty data, 514–518

ShowMovies.aspx page, 486–487

ShowShoppingList.aspx page, 488

line charts, 692

mean value, 698

Repeater control, 624–625, 627

ShowRepeater.aspx file, 624–625

ShowRepeaterPhotos.aspx file, 626–627

DisplayMode property

BulletedList control, 473

ValidationSummary control, 165

DisplaySideBar property (Wizard control), 226

Distinct( ) method, 951

Divide( ) method, 984

DivView control, 1667

binding to SqlDataSource control, 1670–1671

CreateChildControls( ) method, 1669

DataBind( ) method, 1670

DivView.cs file, 1668

dll files. See assemblies

dlstMovies_Edit( ) method, 656

documents, saving to database tables, 185, 188–189

FileHandler.aspx page, 188–189

FileUploadDatabase.aspx page, 185, 187

domain attribute, 1258

domain configuration option (Forms authentication), 1207

Domain property (HttpCookie class), 1272–1273

domains, Forms authentication across, 1214–1216

DoSomething.aspx view, 1509

Downstream value, 1349

DpapiProtectedConfigurationProvider, 1557, 1561

DragHandleID property, 1750

DragPanel control, 1738, 1750–1751, 1754

drill-down reports, 709–710

DROP Assembly command, 923

drop shadows, rendering, 1583–1584

DropDown control, 1738

DropDownList control, 47, 325, 338, 410, 458, 460, 1423, 1425

DropShadow control, 1738

DropShadow.cs file, 1583

dsmgmt.exe tool, 1241

Duration attribute (%@ OutputCache % directive), 1369

Duration property (ControlCachePolicy class), 1370

dynamic compilation, 34–37, 724–725

dynamic data

building, 1492, 1494, 1496

overview of, 1491–1492

templates, 1496–1497, 1500

dynamic queries, 983–984, 986–987

dynamic SQL commands, 965

dynamically applying Skins, 293, 295, 297

ShowDynamicCSS.aspx, 295, 297

ShowDynamicSkin.aspx, 294–295

dynamically applying Themes, 291, 293

DynamicTheme.aspx file, 291, 293

Web.Config file, 293

dynamically loading Master Pages, 263

DynamicContent.aspx file, 263–264

DynamicMasterPage.cs file, 266

multiple content pages, 266–267

Web.Config file, 266–267

dynamically loading User controls, 320–321

%@ Reference %> directive, 322, 325, 327

caching, 1373, 1375

LoadControl( ) method, 320

multi-page wizards, creating, 327–331, 336

ShowFeaturedProduct.aspx example, 320–321

DynamicBottomSeparatorImageUrl property (Menu control), 1040

DynamicContent.aspx file, 263–264

DynamicEnableDefaultPopOutImage property (Menu control), 1040

DynamicFilter control, 713

DynamicFilterExpression, querying, 713

DynamicHorizontalOffset property (Menu control), 1040

DynamicHoverStyle object, 1041

DynamicImage.ashx page, 434–435

DynamicItemFormatString property (Menu control), 1040

DynamicItemTemplate, 1047

DynamicLayout property, 1731

DynamicMasterPage.cs file, 266

DynamicMenuItemStyle object, 1041

DynamicPopOutImageTextFormatString property (Menu control), 1040

DynamicPopOutImageUrl property (Menu control), 1040

DynamicPopulate control, 1738

DynamicSelectedStyle object, 1041

DynamicTopSeparatorImageUrl property (Menu control), 1040

DynamicVerticalOffset property (Menu control), 1040

E

EasyListBox control, 460

Edit Form, 1492

EditDataList.aspx page, 652, 656

EditGrid.aspx page, 510–511

EditImageUrl property (CommandField), 530

editing

data

DataList control, 651, 656

FormView control, 612–616

GridView control, 510–512

database data, 675, 678–679, 681

Master Pages

controls, 261–263

HeaderContent.aspx file, 256

MetaContent.aspx file, 257

page headers, 256–258

properties, 258–259, 261

titles, 255–256

movies, 367

templates, 588, 590–591

EditItemStyle property (DataList control), 657

EditItemTemplate property, 546, 662, 1663

EditItemTemplate template, 646

EditListView.aspx page, 675

Editor design-time attribute, 1632

EditorBrowsable design-time attribute, 1632

EditRepeater.aspx page, 633, 640

EditRowStyle property (DetailsView control), 601

EditText property (CommandField), 530

EDM (Entity Data Model), 1492

EffectivePrivateBytesLimit property (Cache object), 1387

elements. See names of specific elements

email

addresses, validating, 151, 153

encryption, 1166

sending

ChangePassword control, 1188, 1190

CreateUserWizard control, 1166–1169

SmtpClient class, 11

Email ID, 1180

Email property (MembershipUser class), 1231

EmbeddedObjects property (MailDefinition class), 1167

Employee Directory application, 375–376

Employee object, passing as parameter, 790, 793–795

Employee.cs file, 778

Employee.cs file, 745–746

EmployeeData component

EmployeeData.cs file, 791, 793

UpdateEmployees.aspx page, 793

EmployeeData.cs file, 791, 793

Employees.cs file, 741

Employees/Employees.sitemap file, 1102

EmployeesDSSorting component, 810

EmployeesDSSorting.vb file, 810

EmployeesUISorting.cs file, 807

empty data, displaying

DetailsView control, 573–574, 576

ShowEmptyDataTemplate.aspx page, 574, 576

ShowEmptyDataText.aspx page, 573–574

GridView control, 514, 516, 518

empty form fields, validating, 158–159

EmptyDataRowStyle property (DetailsView control), 601

EmptyDataTemplate, 518, 662, 664

EmptyDataText property, 516

EmptyItemTemplate, 662, 669

Enable Action, 1764

EnableAction animation, 1763

EnableCaching property, 1377

enableCrossAppRedirects attribute, 1214

enableCrossAppRedirects configuration option (Forms authentication), 1208

EnableCrossAppRedirects property (FormsAuthentication class), 1216

Enabled property

Button control, 85

CheckBox control, 78

FileUpload control, 180

HyperLink control, 119

ImageButton control, 93

LinkButton control, 88

ListItem control, 441

RadioButton control, 81

SiteMap class, 1090

TextBox control, 70

enableNotifications tool, 1402

EnableNotifications( ) method, 1400

enableSearchMethods( ) method, 1244

EnableTableForNotifications( ) method, 1401

EnableViewState property (GridView control), 522

enabling

automatic postbacks, 452, 454

cookieless anonymous identifiers, 1303

roles, 1248

Security Trimming, 1096

SQL caches, 1114

SQL Server Session, 1294

ViewState, GridView control, 521–522

Encode value (Mode property), 67

EncryptConfig.aspx page, 1559

encrypted configuration sections, 1556–1557

creating programmatically, 1558, 1561

creating with aspnet_regiis command, 1557–1558

deploying, 1561–1564

DpapiProtectedConfigurationProvider, 1557

RsaProtectedConfigurationProvider, 1557

EncryptedXml class, 1557

encryption

connection strings, 388–389

email, 1166

encrypted configuration sections, 1556–1557

creating programmatically, 1558, 1561

creating with aspnet_regiis command, 1557–1558

deploying, 1561–1564

DpapiProtectedConfigurationProvider, 1557

RsaProtectedConfigurationProvider, 1557

Forms authentication, 1210, 1212, 1214

passwords, 1232–1233

EndExecuteNonQuery( ) method, 912

EndExecuteReader( ) method, 912

EndExecuteXmlReader( ) method, 912

EndGetMovies( ) method, 912

endHandler parameter, 916

EndProcessRequest( ) method, 1479–1480

EndRequestEventArgs, 1704

Enlist, 857

EnsureChildControls( ) method, 1588

entering confirmation codes, 1175

entities

adding, 1006

templates, 1497, 1500

updating, 1006

validation, 996

EntitiesApp_CodeMovie.cs file, 952, 958

EntitiesEditLinqDataSource.aspx page, 962

EntitiesListMoviesByBoxOffice.aspx page, 957

EntitiesPartialMovie.aspx page, 959

EntitiesSearchMovies.aspx page, 954

EntitiesShowLinqDataSource.aspx page, 960

Entity Data Model (EDM), 1492

Entity Lists, 1491

EntityBase class, 992

EntityBase file, 991

EntityCallOutValidator file, 991

EntityDataSource control, 994

EntityDataSource file, 991

EntityValidator file, 991

EnumerateCache.aspx page, 1388

Equal( ) method, 984

error handling, ObjectDataSource control, 822, 825

error messages, displaying summary of, 163, 165

ErrorMessage ID, 1180

ErrorMessage property, 162

errors

command execution errors, 398, 400, 403

displaying summary of, 163, 165

UpdatePanel controls, 1714–1717, 1720

validation errors, highlighting, 128

ShowSetFocusOnError.aspx page, 130

ShowValidators.aspx page, 131

ValidationImage.aspx page, 128

Eval( ) method, 363–364, 606, 729, 1006, 1660

EvaluateExpression( ) method, 1469

EvaluateIsValid( ) method, 167

EvaluationContext property (Configuration class), 1536

event handling, Session state, 1285–1287

events. See also names of specific events

Button control, 86

Calendar control, 197

DataBinding, 598

DataBound, 598

DetailsView control, 598–599, 601

exposing from User controls, 307, 309, 311

GridView control, 546–547

handling, Click events, 22–23, 25–28

ImageButton control, 93

ItemCommand, 598

ItemCreated, 598

ItemDeleted, 598

ItemDeleting, 598

ItemInserted, 598

ItemInserting, 598

ItemUpdated, 598

ItemUpdating, 598

LinkButton control, 89

ModeChanged, 598

ModeChanging, 598

MultiView control, 220

ObjectDataSource control, 817–818

Deleted, 817

Deleting, 817

error handling, 822, 825

Filtering, 817

Inserted, 817

Inserting, 817

ObjectCreated, 817

ObjectCreating, 817, 826–828

ObjectDisposing, 817

parameters, adding and modifying, 818, 820, 822

Selected, 817

Selecting, 817

Updated, 817

Updating, 817

page events, handling, 44–46

PageIndexChanged, 598

PageIndexChanging, 598

Page_InitComplete( ), 46

postback events, handling, 1606–1616

CustomLinkButton example, 1606, 1608

event arguments, passing, 1610, 1613

IPostBackEventHandler interface, 1606, 1608

postback options, 1613, 1616

RaisePostBackEvent( ) method, 1606

Repeater control, 633, 640

DataBinding, 633

EditRepeater.aspx page, 633, 640

ItemCommand, 633

ItemCreated, 633

ItemDataBound, 633

SelectedIndexChanged, 454

SiteMap class, 1091

Wizard control, 227

ExceptionHandled property, 400

exceptions, NullReference, 1369

ExecuteAndSend( ) method, 928

executeInParallel parameter, 916

ExecuteInsert.aspx page, 429–430

ExecuteNonQuery( ) method, 860

ExecuteQuery( ) method, 983

ExecuteReader( ) method, 876, 878, 880–881

ExecuteRegisteredAsyncTasks( ) method, 916

ExecuteScalar( ) method, 874, 876

executing

asynchronous database commands, 911–912, 914

commands with parameters, 863–864

commands without parameters, 860, 862

database commands

canceling command execution, 403, 406

data source mode, changing, 397–398

database rows, filtering, 395–397

error handling, 398, 400, 403

inline SQL statements, 389, 391–392

stored procedures, 392, 395

dynamic SQL statements, 983

SqlDataSource commands, 426

ADO.NET parameters, 426, 428

Delete command, 428

Insert command, 428, 430

Select command, 428–435

Update command, 428

stored procedures, 865–872

from ASP.NET pages, 931–932

GetBoxOfficeTotals, 870

GetMovieCount, 868

Movie4 component listing, 865–866

Movie5 component listing, 870

MovieSelect, 867

MovieUpdate, 867

ShowMovie4.aspx page, 867–868

ShowMovie5.aspx page, 872

ShowMovieCount.aspx page, 869–870

execution life cycles, UpdatePanel control, 1697, 1699–1700, 1703–1704, 1706–1707

ExecutionTime statistic, 851–854

Expand( ) method, 1004

ExpandDepth property (TreeView control), 1070

Expanded property (TreeNode object), 1073

ExpandImageToolTip property (TreeView control), 1070

ExpandImageUrl property (TreeView control), 1070

Expires property, 1269, 1272

expiring

Data Caching

absolute expiration policy, 1390, 1392

sliding expiration policy, 1393–1394

DataSource caching

absolute cache expiration policy, 1376–1377

sliding cache expiration policy, 1378–1379

Forms authentication, 1210

Page Output Cache, 1353–1355, 1357

explicit localization expressions, 1438–1441

ExplicitShowMovies.aspx page, 785–786

ExponentialMovingAverage formula, 702

exposing

User control events, 307, 309, 311

User control properties, 304–306

PropertyRandomImage.ascx file, 304–305

ShowDeclarative.ascx file, 305

ShowProgrammatic.ascx file, 306

Expression property, 953

ExpressionBuilders, 1464–1465

AppSettingsExpressionBuilder class, 1464

ConnectionStringsExpressionBuilder class, 1465

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset