See content cross-page posting, 52 action attribute, 53-54 client-side redirection, 61-62 method property, 55-56 page references... routines accessor, 175 accessor property.
Trang 1one-click buttons buttonClick handler, 233-235 click event, 235
code, 231 creating, 230-231 disabled property, 232-233 postbacks, 237-240 submit event, 236-237 one-way encryption credentials, 507 passwords, 506-508 OnInit() method, 357 OnItemDataBound attribute, 120 OnLoad() method, 357
OnValueChanged routine, 329 openList function, 185 Opera 7.21, 335 operation pages executing, 101-103 staged page loading, 94-98 order values, calculating, 97 Page_Load handler, 94-96 tables, adding, 96-97 operation progress, 100-101 option button lists, 9-10 optional parameters, 394 orders
list, 105 values, 97 output browser-specific, 342-343 caching, 161
custom layout control, 357 Execute() method, capturing, 69-70 HTML, 434
server controls, 303
OutputCache directive, 161 overloads, 57
P
pages collapsible master/detail display creating, 134
DataGrid/DataList controls, 135-138
content See content
cross-page posting, 52 action attribute, 53-54 client-side redirection, 61-62 method property, 55-56
page references See references, pages
postbacks, redirecting, 57-60 query strings, 60
request values, accessing, 52-53 server-side redirection, 61-62 viewstate validation, 55 custom page classes, 373 content, 373, 380 creating, 374-377 default content, replacing, 375 internal controls collection, 374 master pages, 378-380 MasterPage example, 375-377 page inheritance, 379 elements
accessing, 201-202 dynamic/absolute positioning, 203 positioning, 206-207
existing, 80 one-click buttons
Trang 2forgot my password, 508 code-behind file, 510-511 email link, 513
HTML code, 509 password change email, 512-513 UserID parameter, 511
inheritance, 379 loading status displays, 86 main pages, 98-100 errors, 106-107 operation pages, 101-103 operation progress, 100-101 order list, 105
readystatechange events, 103-104 server-side code, 106
master, 162-163, 354 multiple sign-in, 528-530 operation
executing, 101-103 staged page loading, 94-98 progress bars, 85-86
alternative page loading, 87-88 animated GIFs, 86
asynchronous page loading, 88 HTML declarations, 90-91 server control declarations, 90-91 viewing, 87
XMLHTTP object example, 89-90 references, 62-63
main page public properties, 64-65 Request collections, clearing, 67 target pages, 65-67
Transfer() method event handlers, 63 staged page loading
browser compatibility, 107 errors, 106-107
implementing, 92-93 main page, 98-100 operation pages, 94-98, 101-103 operation progress, 100-101 order list, 105
order server-side code, 106 readystatechange events, 103-104 status codes, 94
target Execute() method, 70-71 Transfer() method, 65-67 templates, 355
Page_Init events, 379 Page_Load events, 24-25 Page_Load handlers ComboBox control, 183 client-side scripts, 183-186 code, 186-189
control instances, loading, 48 DataList control, populating, 141-142 forms, 54
MaskedEdit control, 225-227 MaskedEdit user control, 247-248 please wait pages, 84
postbacks, counting, 237-239 progress bars, 90
provider-independent data access example, 413 row sets, returning, 131-132
SpinBox control, 262-264 staged page loading, 94-96, 106 target pages, 66
parameters
?, 491 aspnet_regiis.exe utility, 490-491
c, 491 client-side functions, 186
parameters
Trang 3e, 491
ea, 491 enable, 490 evidence, 440
i, 490
ir, 490 IXPathNavigable, 440
k, 491
kn, 491
lk, 491 logError, 457 logFile, 457
lv, 491 names, 392 optional, 394
r, 491
s, 490
sn, 490 SQL statements, 390-392 stored procedures, 392-393
u, 491
ua, 491 UserID, 511 XmlResolver, 440 ParamOrderProc.sql download, 393 parsing XML
DataSet class, 436 strings, 437-438 XmlTextReader class, 434 passwords
forgot my password page, 508 code-behind file, 510-511 email link, 513
HTML code, 509 password change email, 512-513
UserID parameter, 511 hashing, 506-508 performance comparing, 407-410 counters, 482 XSLT, 433 PerformanceCounterPermission permission, 556 permissions
adding, 552-553 allowed, 556-557 deleting, 552 DirectoryServicesPermission, 556 DnsPermission, 556
EnvironmentPermission, 556 EventLogPermission, 556 FileDialogPermission, 556 FileIOPermission, 556 IsolatedStoragePermission, 556 medium trust level example, 557-559 MessageQueuePermission, 556 OLE DB, 554
OleDbPermission, 556 PerformanceCounterPermission, 556 PrintingPermission, 556
ReflectionPermission, 556 RegistryPermission, 556 SecurityPermission, 557 ServiceControllPermission, 557 sets, 550-553
SocketAccessPermission, 557 SQLClientPermission, 557 trust levels, 551-552 UserInterfacePermission, 557 WebPermission, 557 persistent authentication cookies, 514-516 PlaceHolder control, 40
parameters
Trang 4pools (application), 494-496 populating
ComboBox control, 191-196 DataGrid control, 45, 143, 419-420 DataList controls, 141-142 DataSet instances, 115-120 positioning
dynamic/absolute, 203 elements, 206-207 postbacks
control errors, 415 counter values, 239-240 counting, 237-239 registering, 333-334 preconfigured trust levels, 546-547 PreRender event, 300
PreRender() method, 357 PrintingPermission permission, 556 Private members, 256
product key columns, 18-20 product name columns, 18-20 Profiler (SQL), 389
progress bars, 85-86 alternative page loading, 87-90 animated GIFs, 86
asynchronous page loading, 88 HTML declarations, 90-91 server control declarations, 90-91 viewing, 87
properties adaptive SpinBox server control, 339-340 attributes, 122
AutoPostback, 257, 317 cells, 122
ColumnMapping, 461 Columns, 317
ComboBox control, 193 control, 65
ControlCollection object, 39-40 controls, 122
CssClass ComboBox user control, 171 SpinBox server control, 317 DataGridItem object, 122 DataItem, 122
DataSetIndex, 122 DataSource ComboBox user control, 171 declaring, 114-115 DataTextField, 171 DataTextFormatString, 171 disabled, 232-233 dynamically creating, 42-43 EnableViewState, 122 exposing, 174-175 HasRows, 486 Increment, 317 IsDropDown, 179 IsDropDownCombo, 171 ItemIndex, 122 Items ComboBox user control, 171 property accessors, 180 ItemType, 122
list controls, 485 MaskedEdit server control, 308 MaximumValue
SpinBox control, 262 SpinBox server control, 318 Minimum, 262
MinimumValue, 318 MissingSchemaAction, 401
properties
Trang 5public, 64-65 RequireSSL, 487 Rows
ComboBox user control, 171 property accessors, 179 SelectedIndex, 485 ComboBox user control, 171 property accessors, 181 SelectedItem, 485 ComboBox user control, 171 property accessors, 180-181 SelectedValue
ASP.NET version 1.1, 485 ComboBox user control, 172 property accessors, 182-183 SlidingExpiration, 487
SpinBox server control, 317-321 SpinBox user control, 256-257 behavior/appearance, 257-258 Text/Value, 260-261
values, 259 Status, 94 status-related, 94 StatusCode, 94 StatusDescription, 94 style, 172
templates, defining, 366 Text
implementing, 260-261 SpinBox server control, 318 user controls, 160
validation controls, 10 Value
implementing, 260-261 SpinBox server control, 318
Width ComboBox user control, 172 property accessors, 178 property accessor routines ComboBox user control, 176-178 declaring in C#, 178 IsDropDown property, 179 Items property, 180 Rows property, 179 SelectedIndex property, 181 SelectedItem property, 180-181 SelectedValue property, 182-183 Width property, 178
read-only/write-only, 177 provider-independent data access codes, 410 dynamically instantiating classes, 410-411 sample page code, 411-415
Public members, 256 public properties, 64-65 Public variables, 174
Q-R
QuickStart templates, 298
r parameter, 491 RaisePostBackDataChangedEvent routine, 332 RaisePostBackEvent() method, 357
RaisePostDataChangedEvent() method, 357 RAISERROR() method, 395
RangeValidator control, 9 read-only property accessors, 177 ReadXml() method, 450
ReadXmlSchema() method, 450 readystatechange events, 103-104 properties
Trang 6real page-loading status displays, 86 Redirect() method, 57, 61
redirection client-side, 61-62 files, 525 server-side, 61-62 references
nested DataGrid controls, 146 pages, 62-63
main page public properties, 64-65 Request collections, clearing, 67 target pages, 65-67
Transfer() method event handlers, 63 ReflectionPermission permission, 556 regions (dynamic), 372-373
registering postbacks, 333-334 user controls, 159 RegisterStartupScript() method, 294 RegistryPermission permission, 556 regular expressions, 253-254 RegularExpressionValidator controls, 253-254, 503 relational data, converting to XML, 460
CDATA sections, 464-466 DataSet class, 461-464 relational tables, 462 Render() method controls, 357 structural table contents, rendering, 363 WebControl class, 304
RenderBeginTag() method, 303 RenderChildren() method, 304 RenderContents() method, 304 RenderControl() method, 363 RenderEndTag() method, 303
rendering child controls, 363 content, 367 structural table contents, 363 Request collections, 67
RequireSSL property, 487 results
key code tests, 216-218 performance comparisons, 409 return keys, trapping, 215-218 returning
row sets, 126-127 values
browser-adaptive dialog windows, 292-294 modal dialog windows, 290
reusable content COM/COM+ components, 166 apartment-threaded, 168 tlbimp utility, 167-168 wrappers, creating, 166 master pages, 162-163 server controls, 163-164 disadvantages, 166 machinewide assembly installations, 164-165 server-side include files, 156-157
code, 156 disadvantages, 157-158 dynamic text, 157 support, 158 user controls, 158 contents, 160-161 disadvantages, 161-162 output caching, 161 registering, 159 XML validation classes, 456-460 role-based authorization, 526-528
role-based authorization
Trang 7routines accessor, 175
accessor property See property accessor routines
AddTable, 96 CalculateTotal, 97 CreateCSS2Controls, 342 CreateHTMLTable, 342 DoTest, 407
ExecuteSproc, 397-398 ExecuteSQLStatement database updates, 149-150 UpdateCommand event, 28 FillDataSet, 116
GetDataReader, 414 InjectClientScript, 342 OnValueChanged, 329 RaisePostBackDataChangedEvent, 332 SetColumns, 261
SetMaxMinValues, 261, 321 ShowData, 413
ShowSchema, 403 ShowSelected, 193 WriteClientScript, 426 rows
DataList controls, 145 editing, 145-149 multiple, 415 selecting, 143-144 sets, returning, 126-127 Rows property
ComboBox user control, 171 property accessors, 179 runtime
configurations, 492 multiple authentication modules, 542-543
multiple authorization modules, 545 versions, 490-492
S
s parameter, 490 SaveViewState() method, 357 saving
bandwidth, 111 control values, 323 schemas
DataSet instances, 400-401 MissingSchemaAction.Add, 404-405 MissingSchemaAction.AddWithKey, 405-407 viewing, 403-407
XSD, 470 script mappings, 488-489 scrollable content, 36-37 scrollList function keypress events, 206 Page_Load handler, 184 searching
namespace qualified nodes, 453-455 XML data, 442-445
sections (CDATA), 464-466 security
authentication modules, 538-540 authorization modules, 543-545 credentials, 438
DataSet class, 487 trust levels, 546 allowed permissions, 556-557 customizing, 549-550, 553-555 folders, 558-559
full trusts, 548 routines
Trang 8medium trust level example, 557-559 paths, 559
preconfigured, 546-547 read only date, 558 selecting, 548-549 SecurityClass elements, 553 SecurityPermission permission, 557 SelectedIndex property, 485 ComboBox user control, 171 property accessors, 181 SelectedItem property, 485 ComboBox user control, 171 property accessors, 180-181 SelectedValue property ASP.NET version 1.1, 485 ComboBox user control, 172 property accessors, 182-183 selecting
base classes, 302 rows, 143-145 targets, 200-201 trust levels, 548-549, 555 serialization (XML), 470-474 server controls, 163-164 advantages, 298 building, 299 classes base, selecting, 302 Control inheritance, 303 creating, 301-302 custom inheritance, 304 WebControl inheritance, 304 custom layout, 355-357 child controls, 363-365 content, creating, 358-360 controls, capturing, 362
creating, 360-365 MasterPageControl example, 360-362 output, 357
declarations, 90-91 disadvantages, 166 HTML controls, 301 life cycle, 300-301 machinewide assembly installation, 164-165 MaskedEdit, 305
AddAttributesToRender() method, 309-311 Class file, 305-307
compiling, 312-313 constructor, 308 CreateChildControls() method, 311-312 demonstration page, 315
deploying, 313-315 internal variables, 307 properties, 308 testing, 313-315 output, generating, 303 QuickStart templates, 298 SpinBox, 315
adaptive See adaptive SpinBox server control
Amaya, 336-337 child controls tree, 324-326 Class file, 316-317 client-side script, 326-327 constructor, 321-322 control changes values, 330 CreateChildControls() method, overriding, 322-323
event handlers, 326-327 internal variables, 318-321 IPostBackDataHandler interface, 330-333 Mozilla 1.5, 335
Netscape Navigator 4.5, 336 nonstandard browsers, 337-339
server controls
Trang 9Opera 7.21, 335 postbacks, registering, 333-334 properties, 317-321
trace information, 327-328, 334 ValueChanged event, 328-330 template, 365
container controls, 367 content, 366-367 creating, 366-370 master page example listing, 368-370 templates, 366-367
Web Forms controls, 301 server-side include files, 156-157 code, 156
disadvantages, 157-158 dynamic text, 157 support, 158 server-side redirection, 61-62 server-side scripting SpinBox control, 261 maximum/minimum values, 262 Page_Load handler, 262-264 SetColumns/SetMaxMinValues routines, 261 text box width, 262
staged page loading main page, 106 server-side validation, 12
ServiceControllerPermission permission, 557 sessions
cookieless, 17, 239 data, deleting, 31 SetColumns routines, 261 SetMaxMinValues routine, 261, 321 SetWindowResult() method, 293 sharing user controls, 250 shipping addresses, 395-396 Show Orders button, 105
ShowData routine, 413 showKeycode function, 215 ShowMembers() method, 172, 176 showModalDialog() method, 285-286 ShowOrders handler, 106
ShowSchema routine, 403 ShowSelected routine, 193 sign-in controls, 500 authentication cookie, 506 Click event handler, 505 initializing, 504 RegularExpressionValidator controls, 503 sample code, 502-503
user sign in, 500 validators, 506 sign-in pages, 528-530 signing in/out, 531-535 SignOut() method, 521 SlidingExpiration property, 487
sn parameter, 490 SocketAccessPermission permission, 557 sorting XML data, 446
DataView class, 450-452 namespace qualified nodes, 453-455 text-based sorts, 450
XPathExpression class, 446-450 XSD schema date types, 451 source data, 424-425
SpinBox control, 48 SpinBox server control, 315 adaptive, 334, 339 browser-specific output, 342-343 CreateChildControls() method, 340-342 internal variables, 339-340
LoadPostData() method, 343, 346 server controls
Trang 10properties, 339-340 testing, 346-348 Amaya, 336-337 Class file, 316-317 child controls tree, 324-326 client-side script, 326-327 constructor, 321-322 control changes values, 330 CreateChildControls() method, overriding, 322-323
event handlers, 326-327 internal variables, 318-321 IPostBackDataHandler interface, 330-333 Mozilla 1.5, 335
postbacks, registering, 333-334 properties, 317-318, 320-321 trace information, 327-328, 334 ValueChanged event, 328-330 GAC installation, 348
assembly, installing, 350 Class file, 349
compiling, 349 testing, 351-352 Netscape Navigator 4.5, 336 nonstandard browsers, 337-339 Opera 7.21, 335
SpinBox user control, 254 client-side code, 264-266 interface, 255-256 Private/Public members, 256 properties, 256-257 behavior/appearance, 257-258 Text/Value, 260-261
values, 259 server-side scripting, 261 maximum/minimum values, 262 Page_Load handler, 262-264
SetColumns/SetMaxMinValues routines, 261 text box width, 262
SQL Profiler, 389 SQL Server State Service, 481 SqlClient classes, 393 SQLClientPermission permission, 557 staged process page loading browser compatibility, 107 errors, 106-107
implementing, 92-93 main page, 98-100 operation pages, 94-98 executing, 101-103 order values, calculating, 97 Page_Load handler, 94-96 tables, adding, 96-97 operation progress, 100-101 order list, 105
readystatechange events, 103-104 server-side code, 106
status codes, 94 statements (SQL) stored procedure default values, 393-395 event log, writing, 395
executing, 396-398 shipping addresses, 395-396 testing, 399
stored procedure parameters, ordering, 392-393 submitted values, 386
batch statements, 389 comment markers, 389 malicious input, 387-389 parameters, adding, 390-392 status codes, 94
Status property, 94 StatusCode property, 94
StatusCode property