I
IBuyAdventure.NET application, 1197
application user interface, 1208
<form> elements, 1212
C#, use for the user controls and code, 1213
caching, 1213
creation, 1210
OutputCache directive, 1212
PageBase class, implementation, 1213
retrieving database connection string, 1213
User Controls, 1209
welcome page, 1209
assemblies, 1204
compiling, 1205
deployment mechanism, 1204
naming conventions, 1205
business objects, 1200
CartDB Business object, 1226
ProductsDB Business object, 1200
UsersDB Business object, 1236
categories list, 1217
building, 1217
displaying images, 1221
displaying selected products, 1219
specifying layout of data, 1217
checkout processing, 1239
canceling the order, 1241
order history and account, 1241
checkout processing and security, 1233
first time customer registration, 1237
Forms-based authentication, 1235
Login.aspx page event handlers, 1235
page return navigation during authentication, 1236
database, 1205
Accounts table, 1206
Orders table, 1206
Products table, 1207
ShoppingCarts table, 1207
description, 1198
displaying shopping cart & changing orders, 1231
displaying shopping cart and changing an order, 1228
Repeater list control, 1228
enterprise level scalability, designing for, 1199
extends AdventureWorks application, 1197
ILDASM output for IBUYAdventureCart.dll, 1204
n- tier architecture, 1198
product details, 1222
defining rating bar for products, 1223
Page_Load event, 1226
scalability, 1198
session state, storage using databases, 1199
shopping cart, 1224
target audience, 1198
today's special product, 1215
Page_Load event handling, 1215
web.config file, storage in, 1215
user controls, 1210
IBuySpy.com, ASP.NET application, 5
ICollection interface, 757, 761, 773
BitArray class, implemented by, 790
CollectionBase class, implemented by, 799
inheritance, 760
GetEnumerator method, 773
Methods , 773
Properties, 773
Queue class, implemented by, 787
ReadOnlyCollectionBase class, implemented by, 800
Stack class, implementing by, 785
ICollectionLister control
implementation example, 934
properties, 934
IComparable interface
ArrayList class, MovieList example, 770
CompareTo method, 769, 770
IComparer interface, working with, 769
implementation example, 769
IComparer interface
Array/ArrayList class, working with, 769
binary searching, use with, 772
compare method, 769
IComparable interface, working with, 769
implementation example, 769
SortedList class, implemented by, 788
id attribute
<Object> tag declarations, 578
server controls, ASP.NET, 12
ID property, HtmlControl class, 176
ID property, WebControl class, 216
identity
see user identity.
<identity> element
ASP.NET
process accounts, 750
configuration, 659
impersonate attribute, 659
password attribute, 659
userName attribute, 659
web.config file, 705
Windows Authentication, 708
Identity object
AuthenticationType property, 722
FormsIdentity object, 723
IsAuthenticated property, 722, 729
Name property, 722
PassportIdentity object, 723
System.Web.Security namespace, 723
User object, 722
WindowsIdentity object, 723
Identity property
HttpContext class, 722
Identity class, 722
User class, 722
user identity, use in obtaining, 723
IDictionary interface, 757, 783
inheritance, 760, 783
methods/properties, 783
SortedList class, implemented by, 787
IDictionaryEnumerator interface, 757
Hashtable class, use with, 781
inheritance, 760
IDisposable interface
IEnumerator interface, support for, 800
implementation example, 800
idleTimeout attribute, <processModel> element, 668
IEnumerable interface, 757, 782
BitArray class, implemented by, 790
example, 758
For...Each...Next statement, use with, 760
foreach statement, use with, 760
GetEnumerator method, 757
Hashtable class, implemented by, 781
inheritance, 760
Queue class, implemented by, 787
ReadOnlyCollectionBase class, implemented by, 800
SortedList class, implemented by, 788
Stack class, implementing by, 785
IEnumerator interface, 757, 758
Current property, 759
example, 758
For...Each...Next statement, use with, 760
foreach statement, use with, 760
IDisposable interface, support for, 800
inheritance, 760
System.Object objects, accessing, 758
If...Then...Else statement, updating data source example, 505
IgnoreSchema value, XmlWriteMode enumeration, 519
IHttpHandler interface
IsReusable property, 662
ProcessRequest method, 662
IIS (Internet Information Services)
application domains, with, 52
application mappings, 687
application root directory, 562
ASP configuration, 616
ASP.NET authentication, 704
ASP.NET configuration, 615
creating web applications, 619
custom file extension mappings, 619
IIS and ASP.NET, common error pages, 646
authentication, 690
certificates, using, 691
IP Address and Domain Name Restrictions dialog, 690
operation mechanism, 688
specifying authentication method, 692
Windows Authentication, logon process, 710
authorization, 685, 695
ACL, settings overridden by, 696
impersonation, 660
ASP.NET, impersonation compared to, 697
IUSR_machinename account, 686
IWAM_machinename account, 686
ISAPI extension DLL, mapping, 63
metabase, 615
MMC snap-in, 562
security, 683
virtual directories, folders list, 563
web applications
mapping file extensions to resources, 606
marking folder as application, 564
removing an application, 566
virtual directory creation, 563
IIS 5
ASP.NET application domains, 52
IIS 6.0, compared to, 698
IIS 6.0, Isolation Mode use within, 700
IIS 6.0
application pools, use of, 698
controlling resource usage, 698
creating new application pool, 699
selecting application pool for application, 700
ASP.NET application domains, 53
ASP.NET configuration, 568
worker process memory limits, 568
worker process recycling, 569
file access permissions, 361
IIS 5.0 Isolation Mode, 53, 361, 700
IIS 5.0, compared to, 698
installation with ASP.NET 1.1
Configure Your Server wizard, using, 566
manual installation, 567
Web service extensions, 701
creating new Web service extension, 702
Windows Server 2003, within, 566, 698
IIS MMC snap-in
IIS 6.0
application pool creation, 699
ASP.NET configuration, 568
Web service extensions creating, 702
user groups, viewing, 690
virtual directories creation, 563
web applications, creation, 562
Web service extensions viewing, 702
IL (Intermediate Language), 51
CLR, handling using, 36
JIT, use of, 36
ILDASM (Intermediate Language Disassembler), 46
assem, 906
assembly manifests , examining, 46
IList interface, 757, 761
Array class, implementing using, 762
ArrayList class, implementing using, 763
CollectionBase class, implemented by, 799
inheritance, 760
methods/properties, 761
Image control, mobile controls, 1081
implementation example, 1082
properties, 1082
templates, using, 1113
WAP simulator code, 1082
Image Web Form control, properties, 219
ImageAlign property, Image control, 219
ImageButton control, 233, 240
Click event, 239
events, 217
Events demonstration page, 240
properties, 217
ImageUrl property
Command mobile controls, 1083
HyperLink control, 228
Image mobile controls, 1082
i-Mode cHTML, wireless Internet access, 1059
impersonate attribute, <identity> element, 659
impersonation, 686
ASP.NET, 697
IIS impersonation, compared to, 686, 697
impersonation enabled, 697
impersonation not enabled, 697
process accounts, 749
definition, 685
IIS, 660, 686
ASP.NET, impersonation compared to, 686, 697
IUSR_machinename account, 686
IWAM_machinename account, 686
Implements directives, ASP.NET, 146
Implements keyword, Visual Basic.NET, 80
interfaces, class derivation from, 80
implicit inline parameters, stored procedure, 409
Import directive, ASP.NET
Import directive, global.asax file, 575
import keyword, page directive, 146, 342
Import statement, data store example, 120
Import method, XMLNode class, 548
Imports statement, Visual Basic.NET, 38
component references, 82
System.Data namespace, importing, 342
INamingContainer interface, System.Web.UI namespace, 940
Index property, Group class, 846
indexers, 772
ArrayList class, use within, 772
implementation example, 772
IndexOf method
Array class, 761
ArrayList class, 767
IndexOf, IList interface, 761
InferXmlSchema method, DataSet class, 515
inheritance, 38
C#
Implementation example, 90
cross-language inheritance, 107
Visual Basic.NET, implementation example, 78
Inherits attribute, Application directive, 575, 604
global.asax, custom base class creation, 604
implementation example, 605
Inherits attribute
code-behind, use with, 152
Control directive, 160
Page directive, 145
Init event
Control class, 930
Page class, 125
InitialValue property, RequiredFieldValidator control, 203
inline code
see also code-behind.
code-behind, compared to, 962
web services, within, 961
InnerException property, Exception class, 1127
InnerHtml property
<xmp> element, XML data management, 523
HtmlContainerControl class, 177
HtmlControl class, 177
InnerText property
HtmlContainerControl class, 177
XmlNode class, 546, 552
InnerXml property, XmlNode class, 546, 552
input validation controls
see validation controls.
InputStream property
HttpRequest class, 1163
HttpResponse class, 833
Insert method
IList interface, 761
Cache object, 586
InsertAfter method, XmlNode class, 548
InsertBefore method, XmlNode object, 547
InsertCommand property, DataAdapter class, 348
DataSet object, data updates, 469
updating relational data source examples, 482
InsertRange method, ArrayList class, 775
Installation Wizard, .NET Framework, 3
InstanceExists method, PerformanceCounterCategory class, 1146
InstantiateIn method, Page class, 937
instrumentation, profiling, 1143
counters, 1144
security, 1143
integrated windows authentication:, 692
integration
applications, 1158
migration, 1158
Interface statement, Visual Basic.NET, 79
interfaces
C#, 91
classes, derivation for, 91
interface statement, 91
NET components , using from COM
automatic interfaces, 1183
manually created interfaces, 1181
Visual Basic.NET, 79
Impliments keyword, 80
Interface statement, use of, 79
multiple inheritance, 80
Web forms, features, 123
interoperability, 1174
API calls, using P/Invoke, 1188
COM objects, using from .NET, 1177
managed/un~ code boundary, crossing , 1174
architectural & programming differences, 1175
blittable/non-blittable data type marshalling, 1175
HRESULTS, 1177
NET components, using from COM, 1181
reasons for, 1174
Web services, 1003
intrinsic controls, ASP.NET
Hashtable class, compared to, 782
InvalidCastException exception, 763
InvalidOperationException exception, 758
InvalidPathChars constant, Path class, 818
IOException class, System.IO namespace, 808
IP Address and Domain Name Restrictions dialog
IIS, authentication, 690
IPostBackData interface, server controls, postback data for, 927
IPostBackDataHandler interface, System.Web.UI namespace, 917
LoadPostData method, 917
RaisePostDataChangedEvent method, 917
IPostBackEventHandler interface, System.Web.UI namespace, 146
postback from any element, 922
RaisePostBackEvent method, 923
ISAPI (Internet Server API)
application mapping, 688
extension DLL, 63
web applications, mapping file extensions to resources, 607
IsAuthenticated property
HttpRequest object, 1164
Identity object, 722
Windows Authentication, implementation example, 729
IsClosed property, DataReader class, 357
IsCookieless property
HttpSessionState object, 1162
Session object, 582
IsEnabled property, TraceContext class, 1123, 1124
IsFixedSize property, IList interface, 761
IsInRole method, User object
user role, checking, 723
Windows Authentication, example, 730
IsNewSession property, HttpSessionState object, 1162
IsPathRooted method, Path class, 817
IsPostBack property, Page class, 122, 126, 135
DataGrid controls, automatic paging, 317
sample ASP.NET page example, 22
Web forms, page processing steps, 136
IsPostBackDataHandler interface, TextBox control, 918
IsReadOnly property
HttpSessionState object, 1162
IList interface, 761
Session object, 582
IsReusable property, IHttpHandler interface, 662
IsSamePosition method, XPathNavigator class, 376
IsSecureConnection property, HttpRequest object, 1164
IsSynchronized property
HttpSessionState object, 1162
ICollection interface, 775
ArrayList objects, working with, 776
thread safe objects, determining, 775
IsValid property
BaseValidator class, 203, 210
Page class, 126
Item property
IList interface, 761
RepeaterCommandEventArgs class, 142
ItemBound method, DataList control, IBuyAdventure.NET, product details, 1225
ItemCommand event
DataList control, selecting & editing data, 328
DataGrid controls, custom & hidden columns , 306
ItemCount property
List mobile controls, 1088
ObjectList mobile controls, 1094
ItemCreated event, DataList list control, 1221
ItemDataBound event, list controls
event handling, data-bound controls, 309
ITemplate interface, System.Web.UI namespace, 936
Items property, ListControl class, 243
ItemsAsLinks property, List mobile controls, 1088
ItemsPerPage property
List mobile controls, 1088
ObjectList mobile controls, 1094
ItemStyle property, ICollectionLister control, 934
ItemTemplate template, 293
business objects, class testing, 865
DataGrid controls
custom & hidden controls, 303, 304
editing data, 322
DataList controls
loading templates at runtime, 298
multiple column layouts, 300
selecting & editing data, 327
IBuyAdventure.NET
categories list, 1217
page details, 1223
Repeater controls, simple template example, 295
IUSR_machinename account, impersonation, 686
IWAM_machinename account, impersonation, 686