search for books and compare prices
Tables of Contents for Building Web Solutions With Asp.Net and Ado.Net
Chapter/Section Title
Page #
Page Count
Acknowledgments
xiii
Introduction
xvii
Part I Data Access and Reporting
Data Bound .NET Controls
3
26
ASP.NET Data Binding
3
4
Feasible Data-Binding Sources
4
1
Simple Data Binding
5
1
Complex Data Binding
6
1
The DropDownList Web Control
7
2
The CheckBoxList Web Control
9
2
The RadioButtonList Web Control
11
1
The ListBox Web Control
12
2
The Repeater Control
14
5
Accessing Data Bound Information
14
2
Repeater Control Events
16
3
The DataList Control
19
7
Templates Specific to DataList
20
1
Events Specific to DataList
21
2
Relating Graphical and Data Elements
23
3
The DataGrid Control
26
3
Pageable Data Grids
29
46
Constituent Items of DataGrid
29
2
Column Types
31
1
Binding Columns
32
11
Bound Columns
33
1
Button Columns
34
3
Link Columns
37
3
Programmatic Binding
40
3
Data Pagination
43
16
Semi-Automatic Pagination
43
2
Properties for Pagination
45
1
The Pager Bar
45
2
Pagination in Action
47
1
Customizing the Pager Bar
48
6
Custom Pagination
54
5
Sorting Columns
59
9
Setting Up Sorting
60
1
Auto-Reverse Sorting
61
3
Sorting Multiple Fields
64
1
Auto-Reverse Sorting for Multiple Columns
64
2
Showing Sorting Information
66
2
DataGrid Controls and Data Persistence
68
7
Scalability? What Was That?
69
1
Using the Session Object
69
1
Using the Cache Object
70
1
Using XML Files
71
1
Using Data Readers and Adapters
72
1
The Paradox of Pagination
73
2
Templated DataGrid Controls
75
30
Binding Templated Columns
75
3
Templated Columns in Action
78
10
Concatenating Data Fields
79
1
Sorting Templated Columns
80
1
Grouping Columns Under a Single Header
81
2
Adjusting Column Margins
83
2
Customizing Column Headers
85
3
Creating Templates Dynamically
88
9
Loading Templates from Files
88
1
Managing Multiple Views for a Column
89
4
Loading Templates from Strings
93
1
Implementing ITemplate
94
3
Adapting Columns to Data
97
8
Showing Boolean Values
97
2
Showing Images
99
1
Showing Arrays
100
5
Editing DataGrid Controls
105
34
The In-Place Editing Feature
106
11
Enabling In-Place Editing
106
5
Reading Text from Edited Fields
111
2
Updating the Data Source
113
3
A Long List of Drawbacks
116
1
Editing in Place Using Templates
117
9
Working with Template Controls
118
2
Adapting Layouts to Data
120
6
Adding New Rows
126
13
Setting up the Add-Row Feature
126
2
Adding Blank Rows
128
1
Switching to Edit Mode
129
1
Updating the Table and the Grid
130
9
Part II Smart and Effective Data Access and Reporting
Code Reusability in ASP.NET
139
36
Layers of ASP.NET Pages
139
2
From Spaghetti Code to Lasagna Code
140
1
Slimmer Pages
141
1
The Code-Behind Approach
141
6
Enabling Code-Behind
142
1
Writing Code-Behind Pages
142
3
Visual Inheritance for ASP.NET Pages
145
2
Embeddable Web Forms
147
15
Writing User Controls
147
6
Creating a New DateBox Control
153
4
Firing Events
157
5
Writing Custom Controls
162
13
A Labeled TextBox Control
162
3
Using Custom Controls
165
2
An Off-the-Shelf DataGrid Control
167
3
The UpdateView Event
170
1
The SortExpression Property
171
4
Advanced Data Reporting
175
36
Item Selection
175
11
Enabling Item Selection
176
3
Using the SelectedIndexChanged Event
179
2
Selecting Rows Programmatically
181
2
Selection and Drill-Down
183
2
Filtered Views
185
1
Allowing the Selection of Multiple Items
186
9
Properties of the SuperGrid Control
187
1
Layout of the SuperGrid Control
188
5
Retrieving the Selected Items
193
2
Selecting by Condition
195
6
Changing the Background Color
196
1
Evaluating the Condition
197
1
Adding an Extra Column
198
3
Aggregates and Summary Rows
201
10
The Right Way to Query
202
1
Creating Relations Between Tables
202
9
Disconnected Web Applications
211
44
What is the DataSet Object Really For?
212
3
Implications for Web Applications
212
1
DataSet and the DataGrid Control
213
1
Towards Disconnected Applications
214
1
Transparent Data Sources
215
4
Working with the Cache Object
216
1
Loading Data from a Generic Source
216
1
Creating Subtables
217
2
Batch Updates
219
10
Locking Rows
220
1
Applying In-Memory Changes
221
3
Auto-Increment Fields
224
2
Delete and Remove
226
2
States of a Row
228
1
An Offline Buffer for Data
229
4
Loading a DataSet from XML
229
1
The DiffGram Format
230
3
Submitting Changes
233
22
Detecting Changes
233
2
Rejecting Changes
235
1
Viewing Changes
235
4
Generating Commands
239
3
Command Builders
242
4
Data Conflicts
246
9
Part III Interoperability
Interoperable Web Applications
255
30
The COM Interop Services
256
1
Using ADO in .NET Applications
257
5
The ADODB Assembly
258
1
Getting a Recordset
259
2
ADO Server Cursors
261
1
Migration Issues
262
1
Adapting Recordset Objects to DataSet Objects
262
7
Loading a Recordset Object into a DataSet Object
263
1
Loading a Recordset Object into a Data Table Object
264
1
A Common Migration Scenario
265
4
From DataSet Objects to ADO Recordset Objects
269
9
Serializing DataSet Objects to XML Recordset Objects
269
1
XML Schemas for DataSet Objects
270
1
The ADO XML Schema
271
1
Creating an ADO XML Schema
272
4
From .NET Data to XML
276
2
XML Object Serialization
278
7
Enabling Object Serialization
278
3
Serializing to XML
281
4
Web Services
285
32
Dynamic Link Web Libraries
286
2
Web Service Specifications
286
1
Underlying Technologies
287
1
.NET Web Services
288
16
The WebService Attribute
288
1
Changing the Default Namespace
289
1
Defining Web Methods
290
3
Under the Hood of .NET Web Services
293
3
Invoking .NET Web Services
296
4
Creating Proxy Classes
300
4
Web Service Implementation
304
5
Contract Design
304
1
Minimizing Round-Trips
305
1
Authentication and Authorization
306
2
Managing State
308
1
Publishing and Deploying Web Services
308
1
Web Service Optimization
309
8
Asynchronous Calls
310
2
SOAP Extensions
312
2
Extreme Optimization
314
3
Exposing Data to .NET Applications
317
38
Exposing Proprietary Data
318
17
Using Tailor-Made Classes
319
1
The DirectoryListing Class
320
4
Creating In-Memory Tables
324
6
Using the DirectoryListing Class
330
3
Using OLE DB Providers
333
2
Inside .NET Data Providers
335
9
The Architecture of .NET Data Providers
336
2
Implementing a Connection
338
2
Implementing a Command
340
1
Implementing a Data Reader
341
1
Implementing a Data Adapter
342
1
Simple vs. Complex Data Providers
343
1
Writing a Simple Data Provider
344
11
The Table Mapping Mechanism
345
1
Filling the DataSet Object
346
1
Using the Simple Data Provider
347
1
Updating the Data Source
348
7
Afterword Some Final Thoughts on the Future of ADO.NET
355
4
Index
359
<