By James Avery, Jim Holmes
Book Price: $59.99 USD
£42.50 GBP
PDF Price: $41.99
Cover | Table of Contents | Index | Sample Chapter
[ A ], [ B ], [ C ], [ D ], [ E ], [ F ], [ G ], [ H ], [ I ], [ J ], [ K ], [ L ], [ M ], [ N ], [ O ], [ P ], [ Q ], [ R ], [ S ], [ T ], [ U ], [ V ], [ W ], [ X ], [ Y ], [ Z ],
A[ Top ]
"A Recipe for Build Maintainability and Reusability" (Flowers), 637
a2ps utility, Cygwin, 1205
Abrams, Brad
Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 340, 988
abstractness of code, 390, 412
access violations, troubleshooting, 767-770, 780
accessibility
of web applications, ensuring, 1091, 1126-1129
web sites about, 1133
ACE (Application Consulting & Engineering) team, 883
ActiveRecord (see Castle ActiveRecord)
add-ins for Visual Studio, packaging, 342, 378-381
Administrator, running commands as, 882, 912-914
afferent coupling, 390
Agans, David J. (Debugging: The Nine Indispensable Rules for Finding Even the Most Elusive Software and Hardware Problems), 835
Agile development methodologies, 429
books about, 431
tracking features, 730
Agile Modeling site, 728
Aguilar Mares, Carlos (developer of ExcelXmlWriter), 195, 208
Ajax (Asynchronous JavaScript and XML), 4, 1090
books about, 52
creating applications
Ajax.NET Professional for, 20-22
Anthem.NET for, 16-19
Atlas for, 5-15
memory management and, 1115
Ajax.NET Professional, 4, 20, 23
calling methods using, 21
downloading and setting up, 20
licensing for, 20
performance of, 20
support for, 22
web site for, 20
Aladdin Free Public License, 328
Alias namespace provider, 1170
Allen, Nicholas (Indigo blog), 107
Almaer, Dion (Pragmatic Ajax: A Web 2.0 Primer), 52
Ambler, Scott (Agile Modeling site), 728
Anderson, Chris (developer of XamlPad), 97
AnkhSVN, 556, 581, 587
context menu for, 582
downloading and installing, 582
licensing for, 581
requirements for, 582
solution, adding to SVN, 582
status markers in Solution Explorer, 584
support for, 587
web site for, 581
working with files, 584-585
Anthem.NET, 4, 16, 19
controls for, using, 16-18
downloading and setting up, 16
licensing for, 16
performance of, 19
support for, 19
web site for, 16
Anti-Cross Site Scripting Library, 881, 882, 906, 908
approaches used by, 907
downloading and installing, 907
licensing for, 906
methods included in, 908
requirements for, 907
support for, 908
web site for, 906
antiword utility, Cygwin, 1205
Apache Lucene, 151
apache utility, Cygwin, 1205
application blocks, 919
Application Consulting & Engineering (ACE) team, 883
Application manager tool, Mono, 950
applications
build process for, 595
automating, 596, 597, 598-604, 605-609
integration testing, 597, 626-636
.NET 1.1 assemblies in, 597, 610-614
decoupled, frameworks for, 919, 972-979, 980-987
deploying, 597, 650-657
setup applications for, 598, 662-664
web projects, 597, 657-661
launching with fewer keystrokes, 1134, 1136-1141
profiling, 766, 767, 793-797, 831-834
troubleshooting while running, 766, 804-809
Arkhipov, Mikhail (developer of HTML/ASP.NET Spell Checker), 359, 366
Aroush, George (committer for Lucene.Net), 160
The Art of Intrusion (Mitnick and Simon), 881
The Art of SQL (Faroult and Robson), 1050
articles (see books and articles)
ASP.NET, 3
Ajax implemented in
Ajax.NET Professional for, 20-22
Anthem.NET for, 16-19
Atlas for, 5-15
blogs about, 52
books about, 51
charts added to applications, 5, 42-45
controls, 3
CSS generated from, 5, 32-38
long operations in, "Please Wait" message for, 4, 26-32
pages, spell checking, 342, 359-365
projects, managing, 342, 374-377
RSS feeds in applications, 5, 46-51
URLs in applications, rewriting, 4, 23-26
web server controls, displaying XML in, 992, 995-999
word-processor functionality for, 5, 39-42
ASP.NET Atlas (see Atlas)
ASP.NET Cache Visualizers, 829
assemblies
building for .NET 1.1, 597, 610-614
comparing, 133, 161-166
comparing visually, 134, 166-171
disassembling, 839, 850-855, 954
signing, 954
assertions
adding, in NUnit, 447
on counter objects in MbUnit, 462
testing, in NUnit, 437
asymmetric encryption, 896
Asynchronous JavaScript and XML (see Ajax)
Atlas, 4, 5, 15
books about, 52
bridging technology, 12
downloading and setting up, 6
external web services, gateways to, 12
JavaScript-based services, 13
licensing for, 6
partial page updates, optimizing, 8-10
partial page updates, rendering, 7-8
requirements for, 6
support for, 15
web services, fetching data from, 10-13
web site for, 6
attributes, XML, 991
audience for this book, xxxiii
Augustine, Sanjiv (Managing Agile Projects), 727
AutoCorrect feature, Visual Studio Express Editions, 265
Avalon (see WPF (Windows Presentation Foundation))
Avdonin, Alexander (developer of TaskSwitchXP), 1186
Avery, James (Visual Studio Hacks), 309, 382
awk utility, using in Cygwin, 1199
B[ Top ]
Bandt, Thomas (developer of UrlRewritingNet.UrlRewrite), 23, 26
Barr, Adam (Find the Bug: A Book of Incorrect Programs), 835
Base Class Library team web site, 166
Basecamp, 668, 669, 676
custom applications or tasks in, 675
licensing for, 669
Messages area, 670
Milestones area, project status in, 672
Overview area, 670
pricing for, 669
requirements for, 669
support for, 675
To-Do area, project tasks in, 671
web site for, 669
Writeboards area, project documents in, 673
bash shell, using in Cygwin, 1201
Bauer, Christian (Hibernate in Action), 1085
Beck, Kent
Extreme Programming Explained: Embrace Change, 340, 431
Test-Driven Development: By Example, 431, 549
Bellware, Scott
blog about O/RM and NHibernate, 1085
developer of NUnit Code Snippets for Visual Studio 2005, 450
Benvenuti, Nino
regarding Smart Device Framework (SDF), 943
regarding WiX, 665
Berkley DB format, for SVN repository, 558
Big Visible Chart, in Agile, 730
Blankenburg, Jeff
regarding HTML Tidy, 1132
regarding W3C Markup Validation Service, 1126
regarding WebXACT, 1130
block histogram, 399
blog resources (see web sites)
blogs
books about, 727
creating, 668, 677-685, 686-689
posting code to, in Visual Studio, 342, 368-371
Bock, Jason (CIL Programming: Under the Hood of .NET), 876
Boey, Peter
developer of ColorMania, 1167
developer of Magnifixer, 1148
books and articles
about Agile development methodologies, 431
about Ajax, 52
about Anthem.NET, 19
about ASP.NET, 51
about Atlas, 52
about blogs, 46, 727
about build process, 600, 665
about code generation, 249
about code libraries, 207
about collaboration, 727
about continuous integration, 626, 637, 665
about CSS, 52, 1133
about cyclomatic complexity, 388
about debugging, 835, 876
about defect-tracking system, 730, 762
about Dependency Injection (DI), 980
about design patterns, 922, 989
about documentation, 340
about DotNetNuke, 988
about FOSS, xxxi
about frameworks, 988
Gang of Four book, 989
about Hibernate, 1085
about IL, 876
about Inversion of Control (IoC), 980
about Mono, 309, 988
about .NET and COM interoperability, 354
about .NET internals, 876
about obfuscation, 876
about optimization, 532
about Oracle, 1050
about O/RM, 1085
about regular expressions, 297, 309
about Remote Assistance, 696
about Rotor, 989
books and articles (continued)
about Ruby, 544
about security, 881, 914
about SharpDevelop, 309
about software development, 595
about sorting, 187
about SQL, 1050
about SQL Server, 1050
about SQLite, 1050
about SVN (Subversion), 558
about test-driven development (TDD), 431
about testing, 549
about tracking systems, 762
about troubleshooting, 835
about Unix, 1196
about Visual Studio, 309, 382
about WCF, 132
about web standards, 1133
about Windows Forms, 78
about WPF, 132
about XML, 1021
about XML comments, 340
Bornstein, Niel M. (Mono: A Developer's Notebook), 309, 988
Bouma, Frans (blog about O/RM), 1085
Bouncy Castle Cryptography API, 881, 882, 896, 906
downloading and installing, 896
encrypting and decrypting files, 897-902
with OpenPGP, 903-905
licensing for, 896
requirements for, 896
support for, 905
web site for, 896
Box, Don (blogs by), 132
branch, in source-control system, 555
bridging technology of Atlas, 12
Brinkman, Joe (Professional DotNetNuke 4: Open Source Web Application Framework for ASP.NET 2.0), 988
Brown, Keith
blog by, 916
The .NET Developer's Guide to Windows Security, 915
Brumme, Chris (blog by), 877
buffer errors, detecting, 788
bugs (see tracking systems; troubleshooting and debugging)
BugTracker.NET, 730, 731, 737
customizing, 732
downloading and setting up, 732
filing reports, 733
licensing for, 731
requirements for, 731
screenshots in, 734
support for, 735
web site for, 731
Bugzilla, 731, 747, 755
bug reports
content of, 748
filing, 749
processing of, 751
extending, 753
installing and setting up, 747
licensing for, 747
online playground for, 748
requirements for, 747
support for, 755
web site for, 747
BugzillaPublisher, 754
build files, in NAnt, 599, 600-601
build process, 595
automating, 596, 597, 598-604, 605-609
books about, 600, 665
integration testing for, 597, 626-636
.NET 1.1 assemblies in, 597, 610-614
Burnette, Ed (HOWTO: Pick an open source license), xxxi
business objects, 209
business rules, abstracting into XML, 133, 134-142
Busoli, Simone (developer for BusyBoxDotNet), 32
BusyBoxDotNet, 4, 26, 32
BusyBox control
adding to web form, 28
contents of, 31
displaying manually, 30
location of, 31
opacity of, 31
when to display, 29, 31
compiling, configuration mode for, 28
downloading and setting up, 27
licensing for, 27
requirements for, 27
support for, 32
testing, 29
web site for, 27
Button, Brian (regarding Enterprise Library), 927
BZip2 compression, SharpZipLib, 193
C[ Top ]
C# Cookbook (Hilyard and Teilhet), 207
C# Corner web site, 79
cabextract utility, Cygwin, 1205
Caching application block, Enterprise Library, 919
Carey, Ben, 825
regarding Basecamp, 676
regarding MSBuild Community Tasks Project, 619
regarding NMock 2.0, 521
regarding Selenium Core), 544
Cascading Style Sheets: The Definitive Guide (Meyer), 52, 1133
casting, problems with, 842
Castle ActiveRecord, 1054, 1079, 1085
ActiveRecord classes, associating with tables, 1080
assembly references for, 1079
downloading and installing, 1079
framework, initializing, 1081
licensing for, 1079
manipulating data, 1082
relationships, adding, 1083
retrieving records, 1082
support for, 1084
web site for, 1079
Castle MonoRail, 918, 963, 971
assemblies, referencing, 965
configuring, 965
controllers, implementing actions with, 966-971
downloading and installing, 964
licensing for, 964
project, creating, 964
support for, 971
web site for, 963
Castle Windsor Container, 919, 972, 979
configuring, 973
downloading and setting up, 973
integrating with NHibernate, 977-979
licensing for, 972
preparing application for, 974-976
registering components with, 976
support for, 979
web site for, 972
CCNET (see CruiseControl.NET)
CCTray, 632
CDI (Constructor Dependency Injection), 983
Certificate namespace provider, 1170
CERT's Coordination Center, 915
change requests, tracking (see tracking systems)
charts
adding to applications, 134, 176-183
adding to web applications, 5, 42-45
chere utility, Cygwin, 1205
churn, 162
Chuvakin, Anton (Security Warrior), 881
CI Factory, 597, 637, 649
assemblies, versioning, 645
build file for, 642
downloading and installing, 638-640
files for, in source-control system, 644
installing new packages, 646-649
licensing for, 638
packages, 637
project for, 640
requirements for, 638
server for, starting, 645
starting integration process, 645
support for, 649
web site for, 638
CI (see continuous integration)
CIL Programming: Under the Hood of .NET (Bock), 876
Cilc, 954
Class Designer, additional features for, 341, 346-350
Class manager tool, Mono, 950
classes
code-behind classes, creating, 211, 234-239
complex, for web services, creating, 211, 240-248
generating with templates, 211, 211-221
mock classes, 433, 522-525
ClickOnce deployment, Visual Studio Express Editions, 267
client/server applications, debugging, 810-812
Clifton, Marc (developer of NSort), 188
CLR (Common Language Runtime), debugging difficulties with, 782
CLR Profiler, 766, 793, 798
command line execution of, 794
downloading and setting up, 793
isolating problems using, 797
licensing for, 793
CLR Profiler (continued)
main window for, 794
metrics generated by, viewing, 795
requirements for, 793
resources used by, 794
support for, 798
web site for, 793
CLR SPY, 766, 783, 792
buffer errors, detecting, 788
compared to FxCop, 783
context-marshaling problems, detecting, 790
downloading and running, 783
errors, finding, 785
garbage-collection problems, detecting, 787
invalid COM wrappers, detecting, 787
licensing for, 783
main window for, 783
marshaling errors, finding, 788
nondeterministic failures, forcing, 787
object lifespans, monitoring, 786
PInvoke signature mistakes, detecting, 785
problem sources, finding, 790
requirements for, 783
stale threads, detecting, 789
support for, 792
web site for, 783
CLR via C# (Richter), 876
ClrDump, 766, 798, 799, 804
command line execution of, 802
creating managed minidumps, 800
creating minidumps, 799
error-handling policy, enforcing, 800
filters, ensuring not overwritten, 801
generating minidumps via command line, 802
including in application, 801
installing, 799
minidumps, analyzing, 803
requirements for, 799
support for, 804
web site for, 798
cmdlets, in PowerShell, 1168
code
comparing, 556, 590-593
coverting between languages, 274
documentation for (see documentation)
for Visual Studio enhancements, packaging, 342, 378-381
managed and unmanaged, calls between, 766, 782-792
obfuscating, 839, 869-875
posting to blog, in Visual Studio, 342, 368-371
tracking bugs and changes in (see tracking systems)
code, analyzing
abstractness, 390
books about, 427
complexity measurement, 387-390
cyclomatic complexity, 388
dependencies, 389, 391, 409-417
depth, 390
distance, 390
for quality and security, 391, 418-426
in Reflector, 391, 391-394
in Visual Studio, 391, 404-408
maintenance complexity metric, 406
stability, 389
standalone tool for, 391, 396-403
Code Complete (McConnell), 340, 388, 427, 532, 727, 835
code completion
in Mono, 949
in MonoDevelop, 287
code coverage, checking with NCover, 272-274, 634
code examples in this book
attribution requirements for, xxxix
using, permission requirements for, xxxix
code generation, 210, 211, 222-225
books about, 249
code-behind classes, 211, 234-239
complex classes for web services, 211, 240-248
for classes, modules, and files, 211, 211-221
strongly typed DataSet objects, 211, 234-239
web services, defining, 211, 226-233
XML schemas, 234-239
Code Generation in Microsoft .NET (Dollard), 249
Code Generation Network web site, 249
code libraries, 133
assemblies
comparing, 133, 161-166
comparing visually, 134, 166-171
books about, 207
business rules, abstracting into XML, 133, 134-142
charting, 134, 176-183
compared to frameworks, 917
compression capabilities, 134, 191-194
exporting Excel spreadsheets, 134, 195-202
logfile creation, 133, 143-149
PDFs, creating, 134, 202-207
RSS capabilities, 134, 188-191
search functionality, 133, 149-160
sorting collections, 134, 185-187
spell checking, 134, 172-176
XML-based workbooks, creating, 134, 195-202
Code Project site, 1085
code reuse, 133
code snippets
for unit testing, 432, 450-452
in IntelliSense, 259
writing and compiling, 251, 290-293
code, testing, 429-431
analyzing test coverage, 432, 480-492, 494-503
automation for, 597, 598-604, 605-609
books about, 549
collaboration for, 432, 468-479
integration testing in build process, 597, 626-636
mock classes and objects for, 433, 522-525
performance tests, 433, 532-536
simulating resources, 433, 510-521
table- and row-based tests, 432, 452-462
timing tests, 433, 532-536
unit testing, 429, 432, 433-449, 462-467
in Visual Studio, 432, 450-452, 504-510
unit testing, in Visual Studio, 433
web applications, 433, 537-543, 544-548
Windows Forms GUIs, 433, 526-531
code, writing, 250
for Mono applications, 251, 270-281, 284-289
for .NET applications, 251, 270-281, 284-289
in text files with IDE features, 251, 293-296
in Visual Studio environment, 250, 251-268
regular expressions, creating and manipulating, 251, 297-301, 303-308
snippets, writing and compiling, 251, 290-293
code-behind classes, creating, 211, 234-239
CodeSmith, 210
CodeTrack, 730, 737, 746
bug report, creating, 741
configuring, 739
downloading and installing, 738
external files in, 741
licensing for, 737
project, creating, 740
reports, creating, 744
reports from, 741
requirements for, 738
support for, 744
web site for, 737
Codus, 211, 222, 226
downloading and setting up, 223
generating data-access code, 224
licensing for, 222
main window for, 223
support for, 226
tables, selecting, 224
web site for, 222
collaboration, 667
blogs, 668, 677-685, 686-689
books about, 727
for documentation, 668, 689-692
instant messaging for, 668, 719-722
online communities, 668, 677-685
online service for, 668, 669-675
remote PCs for, 668, 694-703
TFS user management for, 669, 723-726
tracking system including, 731, 755-762
VOIP capabilities for, 668, 710-716
collections, sorting, 134, 185-187
Collomb, Cedrick (developer of Unlocker), 1191
color codes, list of, 1166
color values, picking from display, 1135, 1163-1166
ColorMania, 1135, 1163, 1167
color codes as output, 1166
color palette, creating, 1164
color wheel in, 1164
downloading and installing, 1163
grabbing color from screen, 1164
licensing for, 1163
support for, 1166
UI for, 1163
web site for, 1163
working colors, changing, 1164
COM scripting, in PowerShell, 1175
COM wrappers, invalid, 787
command aliases, in SlickRun, 1136
command line, scripts used from, 1135, 1167-1176
Command Prompt Here, 1135, 1157, 1159
downloading and installing, 1158
licensing for, 1157
opening command prompt, 1158
requirements for, 1158
support for, 1159
web site for, 1157
commands, adding to Visual Studio menus, 341, 342-346
comments regarding this book, xl
commit, in source-control system, 555
Common Language Runtime (CLR), debugging difficulties with, 782
Common module, EXSLT.NET, 1010
communication (see collaboration)
Community Server, 668, 677, 685
blogging, 682
configuring, with Control Panel, 678
content, managing, 678
content, organizing with tags, 681
editions of, 677, 684
forums, 683
installing, 678
licensing for, 677
mirroring blogs, 683
requirements for, 678
searching a site, 684
support for, 685
web site for, 677
Community Technology Preview (see CTP)
compiling programs in Cygwin, 1201
complexity of code
abstractness, 390
books about, 427
cyclomatic complexity, 388
dependencies, 389, 391, 409-417
depth, 390
distance, 390
in Reflector, 391, 391-394
in Visual Studio, 391, 404-408
maintenance complexity metric, 406
measuring, 387-390
stability, 389
standalone tool for, 391, 396-403
Component Factory web site, 74
Component-based Scalable Logical Architecture (CSLA), 210
compression capabilities, adding to application, 134, 191-194
Conchango Xml Visualizer, 830
Concurrent Versions System (see CVS)
configuration files
for WCF, managing, 81, 102-120
testing code that uses, 444
conflict, in source-control system, 555
connection strings
building, 1026, 1030-1031
online resource for, 1026, 1027-1029
ConnectionStrings.com, 1026, 1030
accessing, 1027
finding connection strings, 1027-1029
licensing for, 1027
support for, 1029
web site for, 1027
Constructor Dependency Injection (CDI), 983
contact information for this book, xl
content, managing in Community Server, 678
context-marshaling problems, detecting, 790
continuous integration, 597, 637-649
articles about, 626, 637, 665
automated process for, 626-636
implementing in Visual Studio, 609
"Continuous Integration" (Fowler), 626
Control Spy, 75, 78
downloading and setting up, 75
licensing for, 75
messages and notifications, viewing, 76
styles, previewing, 75
support for, 77
web site for, 75
controls
ASP.NET, 3
customizing look of, in Expression Interactive Designer, 93
in Windows Forms, 53
monitoring, 54, 74-77
in XP Common Controls, 55
ControlSpy, 54
conventions used in this book, xxxviii
CoolCommands, 341, 343, 346
downloading, 343
editor, additional context menu options, 345
licensing for, 343
locating open files, 346
Solution Explorer, additional context menu options, 343-345
support for, 346
web site for, 343, 346
CopySourceAsHtml, 368, 371
copying code as HTML, 369
customizing HTML generated by, 369
downloading and installing, 369
enabling or disabling in specific menus, 369
licensing for, 369
support for, 371
web site for, 369
CR_Documentor, 312, 320, 322
downloading and setting up, 320
licensing for, 320
requirements for, 320
support for, 321
viewing documentation, 321
web site for, 320
Create, Retrieve, Update, and Delete (CRUD), 209
CR_Metrics, 391, 404, 409
downloading and setting up, 405
generating metrics, 405-408
licensing for, 405
requirements for, 405
support for, 408
web site for, 405
cron utility, Cygwin, 1205
Cropper, 1135, 1159, 1163
capturing screenshots, 1160-1162
installing, 1159
licensing for, 1159
starting, 1160
support for, 1162
UI for, 1160
web site for, 1159
cross-platform development, with SharpDevelop, 275
Cross-Platform .NET Development: Using Mono, Portable.NET, and Microsoft .NET (Easton and King), 309
cross-site scripting attacks, preventing, 882, 906-908
cross-site scripting (XSS), 906, 907
CRUD (Create, Retrieve, Update, and Delete), 209
CruiseControl.NET, 597, 627, 636
build file for, 631
CCTray used with, 632
code coverage in, 634
command line execution of, 628
configuring, 628
extending, 636
installing, 627
licensing for, 627
requirements for, 627
source-control systems used with, 629
support for, 636
tasks in build, viewing, 633
unit tests, including, 633
web site for, 627
wrapping NUnit tests into, 449
Cryptography application block, Enterprise Library, 919
cryptography for communications, 882, 896-905
CSLA (Component-based Scalable Logical Architecture), 210, 249
CSS
books about, 52, 1133
editing in DOM Helper, 1119
files, creating and editing, 342, 371-374
generating from web applications, 5, 32-38
web sites about, 1133
CSS Friendly ASP.NET 2.0 Control Adapters, 5, 32, 39
downloading and setting up, 33
licensing for, 33
support for, 38
using, 33-38
web site for, 33
CSS Properties Window, 342, 372, 374
adding CSS styles, 373
displaying and editing CSS styles, 372
downloading and installing, 372
licensing for, 372
support for, 374
web site for, 372
CSS Zen Garden web site, 371
CTP (Community Technology Preview)
of Atlas, 12
Cunningham, Ward (inventor of Wiki), 689
CVS (Concurrent Versions System), 554, 556, 561-580
CVSNT, merging branches using, 571
Cwalina, Krzysztof (Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries), 340, 988
cyclomatic complexity, 388
cygcheck utility, Cygwin, 1206
cygrunsrv utility, Cygwin, 1203, 1205
cygstart utility, Cygwin, 1203
Cygwin, 1136, 1194, 1197, 1207
a2ps utility, 1205
antiword utility, 1205
apache utility, 1205
Cygwin (continued)
cabextract utility, 1205
chere utility, 1205
compiling programs, 1201
cron utility, 1205
cygcheck utility, 1206
cygrunsrv utility, 1203, 1205
cygstart utility, 1203
DLLs, building, 1202
documentation for, 1200
editrights utility, 1203
enscript utility, 1205
fortune utility, 1206
getfacl utility, 1203
inetd utility, 1205
installing and setting up, 1194-1196
Java, caveats with, 1204
licensing for, 1194
lpr utility, 1205
mc (Midnight Commander) utility, 1206
naim utility, 1206
non-Cygwin programs, building, 1202
patchutils utility, 1206
POSIX paths, caveats with, 1203
QuickEdit Mode in, 1196
regtool utility, 1203
requirements for, 1194
rsync utility, 1206
rxvt utility, 1205
setfacl utility, 1203
shells supported by, 1201
shutdown utility, 1203
SSH, caveats with, 1204
sshd utility, 1205
starting shell, 1196
support for, 1196, 1207
symbolic links, using, 1200
syslogd utility, 1205
terminal applications, caveats with, 1204
unison utility, 1206
Unix utilities, using, 1198-1200
upx utility, 1206
web site for, 1194
wget utility, 1206
Windows facilities, manipulating, 1203
Windows resource compiler in, 1202
wtf utility, 1206
XWin utility, 1205
zip and unzip utilities, 1206
D[ Top ]
Daily Grind (Gunderloy), 1207
Data Access application block, Enterprise Library, 919, 920
Data Definition Language (see DDL)
data-access layers, 211, 222-225
automating creation of, 209
generating, 211, 222-225
databases, 1025
connection strings for
building, 1026, 1030-1031
online resource for, 1026, 1027-1029
mapping entities to, 1054, 1054-1062, 1062-1071
Oracle
using in Visual Studio, 1026, 1038-1044
using in Windows, 1026, 1045-1050
simulating, for testing purposes, 433, 510-521
SQLite, administering, 1026, 1032-1038
table- and row-based tests, 432, 452-462
DataSet objects
in O/RM, 1052
strongly typed, creating, 211, 234-239
Dates and Times module, EXSLT.NET, 1011
Day, Ben (blog about NHibernate), 1085
DDL (Data Definition Language), 1025
de Halleux, Jonathan (developer of Reflector.Graph and Reflector.CodeMetrics), 391
debug dump files, 766, 798-804
debugging (see code, testing; troubleshooting and debugging)
Debugging: The Nine Indispensable Rules for Finding Even the Most Elusive Software and Hardware Problems (Agans), 835
decompiling, 838
decoupled applications, frameworks for, 919, 972-979, 980-987
The Definitive Guide to SQLite (Owens), 1050
Demarco, Tom (Peopleware: Productive Projects and Teams), 727
dependencies, 389, 391, 409-417
between targets in MSBuild Sidekick, 622
hard-coded, 919, 972-979, 980-987
static, 980
Dependency Injection (DI), 980, 981, 983
Dependency Walker, integrated with Process Exporer, 782
deployment, 597, 650-657
for web projects, 597, 657-661
setup applications for, 598, 662-664
depth of code, 390
Deshev, Hristo
regarding Atlas, 15
regarding Drip, 1116
regarding PowerShell, 1177
Design Patterns: Elements of Reusable Object-Oriented Software (Gamma, Helm, Johnson, and Vlissides), 428, 922, 989
Designing with Web Standards (Zeldman), 1133
Deskzilla, 754
Dettman, Peter (regarding Bouncy Castle Cryptography API), 906
development cycle, as value stream, 595
Development Tools for WinFx, 82, 127, 131
creating applications, 128
editing XAML, 129
installing, 127
licensing for, 127
requirements for, 127
support for, 130
using with Expression Graphic Designer, 83
Visual Designer for, 128
web site for, 127
DHTML (Dynamic HTML), 1102
DI (Dependency Injection), 980, 981, 983
dialogs, implementing, 255
Diamond, Jason (concept originator for Anthem.NET), 16
DILE (see Dotnet IL Editor)
Dissecting a C# Application: Inside SharpDevelop (Holm, Kruger, and Spuida), 309
distance measurement for code, 390
Distributed Systems Designer, additional features for, 341, 346-350
distribution of Visual Studio enhancements, 342, 378-381
DLLs, building in Cygwin, 1202
Dobler, Michael (developer of XP Common Controls), 63
dockable applications, creating with DockPanel Suite, 65-68
DockPanel Suite, 63, 69
classes in, 64
dockable application, creating, 65-68
downloading and setting up, 64
licensing for, 64
support for, 69
web site for, 64
DocPanel Suite, 54
Document Object Model (DOM), 1089
Document Type Definition (see DTD)
documentation, 310
articles about, 340
books about, 340
collaboration for, 668, 689-692
creating with NAnt, 603
FAQ system, creating, 312, 333-339
images, creating from applications, 312, 328-332
PDF files, creating from applications, 312, 328-332
previewing and generating with SharpDevelop, 281
XML comments
creating, 312-319
creating help files from, 312, 322-326
previewing as MSDN-style help, 312, 320-321
Dollard, Kathleen (Code Generation in Microsoft .NET), 249
DOM (Document Object Model), 1089
DOM Helper, 1090, 1116, 1122
accessing, 1117
CSS, editing, 1119
DOM structure, displaying, 1117
installing, 1117
licensing for, 1117
registering assembly for, 1117
requirements for, 1117
support for, 1121
troubleshooting with, 1117
unregistering assembly for, 1117
web site for, 1116
DOM objects
monitoring, 1090, 1109-1115
working with at runtime, 1090, 1116-1121
Donaldson, Dave
regarding FxCop, 427
regarding XSD.exe, 240
Dossot, David (developer of NxBRE), 134, 208
Dotfuscator, 839, 878
licensing for, 868
obfuscating an application, 869-871, 872-875
project, creating, 871
support for, 875
web site for, 868
Dotnet IL Editor (DILE), 839, 856, 867
assemblies, debugging, 860-864
assemblies, opening, 859
configuring, 857
dynamic assemblies, debugging, 864-867
installing, 857
licensing for, 856
projects, creating, 857
requirements for, 857
support for, 867
web site for, 856
DotNetNuke, 918, 928, 929, 937
benefits of, 936
books about, 988
configuring, 930
customizing appearance of site (skinning), 932-934
downloading and installing, 929, 930
licensing for, 928
localization architecture of, 935
modules in, 934
pages, adding, 931
support for, 936
web site for, 928
DotNetNuke Enterprise Portal, 928
Dr. Dobb's web site, 835
Drake, Grant (developer of NCoverExplorer), 494, 504
Drip, 1090, 1109, 1116
downloading, 1110
identifying leaked objects, 1111
licensing for, 1110
limitations of, 1115
main window for, 1110
measuring memory leaks, 1110-1111
monitoring memory usage, 1112
resolving leaks, 1113-1114
support for, 1115
web site for, 1110
DTD (Document Type Definition), 990, 1124
Dumbill, Edd (Mono: A Developer's Notebook), 309, 988
Dvoishes, Michael (developer of MSBuild Sidekick), 626
DXCore, 405, 408
dynamic assemblies, debugging, 864-867
Dynamic HTML (DHTML), 1102
Dynamic module, EXSLT.NET, 1012
E[ Top ]
Easton, M.J. (Cross-Platform .NET Development: Using Mono, Portable.NET), 309
editor in Visual Studio, additional context menu options, 345
editrights utility, Cygwin, 1203
Effective XML: 50 Specific Ways to Improve Your XML (Harold), 1021
efferent coupling, 390
Eini, Oren (developer of Rhino.Mocks), 522
elements, XML, 990
Elliott, James (Hibernate: A Developer's Notebook), 1085
encryption
encrypting and decrypting files, 897-902
with OpenPGP, 903-905
types of, 896
(see also security)
endpoints for WCF, monitoring interaction between, 82, 121-124
enscript utility, Cygwin, 1205
enterprise applications, framework for, 918, 919-927
Enterprise Library, 918, 919, 927
application blocks in, 919
blogs, 989
Configuration Console, 924
configuring application, 924-927
downloading and installing, 920
enabling in solution, 920
examples for, 923
licensing for, 920
organization of, 923
Provider pattern used by, 922
requirements for, 920
security uses of, 882
support for, 927
using in environments of less than full trust, 923
web site for, 919
writing application using, 921
entities, in O/RM, 1053
generating, 1054, 1072-1078
mapping to database, 1054, 1054-1062, 1062-1071
Environment namespace provider, 1170
Essential ASP.NET with Examples in C# (Onion), 51
Essential XML Quick Reference: A Programmer's Reference to XML, XPath, XSLT, XML Schema, SOAP, and More (Skonnard and Gudgin), 1021
event handling, Visual Studio Express Editions, 257
Excel spreadsheets, exporting, 134, 195-202
ExcelXmlWriter, 134, 195, 202
downloading and setting up, 195
licensing for, 195
support for, 202
using, 195-202
web site for, 195, 208
Exception Assistant, Visual Studio Express Editions, 265
Exception Handling application block, Enterprise Library, 919
Exclude Certain Files, 655
eXml, 992, 995, 1000
downloading and setting up, 996
licensing for, 996
specifying XML source in control, 996
stripping whitespace from XML, 999
support for, 1000
transforming XML, 997-999
web site for, 996
XInclude in, 999
expert, for Remote Assistance, 696
Expert .NET Delivery Using NAnt and CruiseControl.NET (Holmes), 249, 600, 665
Explorer window, displaying privilege levels in, 882, 909
Expression Graphic Designer, 81, 82, 90
downloading and setting up, 83
exporting features of, 88
image stitching with, 88
images, creating, 83
learning, 83
licensing for, 83
nondestructive editing with, 88
pixel layers, creating, 85
requirements for, 83
support for, 89
vector layers, creating, 87-88
web site for, 83
Expression Interactive Designer, 81, 91
controls, customizing look of, 93
downloading and setting up, 91
licensing for, 91
main screen for, 92
requirements for, 91
support for, 96
timelines in, 95
triggers in, 95
user interface, creating, 94
web site for, 91
EXSLT community initiative, 1009
EXSLT.NET, 992, 1009, 1015
Common module, 1010
Dates and Times module, 1011
downloading and setting up, 1009
Dynamic module, 1012
functions in, 1010
in nxslt2, 994
licensing for, 1009
Math module, 1011
Random module, 1011
Regular Expressions module, 1011
Sets module, 1011
Strings module, 1012
support for, 1015
transforming XML to HTML, 1012-1014
web site for, 1009
eXtended Application Markup Language (see XAML)
Extensible Markup Language (see XML)
Extensible Stylesheet Language Transformations (see XSLT)
external web services, gateways to, in Atlas, 12
Extreme Programming Explained: Embrace Change (Beck), 340, 431
Extreme Programming Roadmap web site, 428
Extreme XML Column discussion forum, 248
F[ Top ]
FAQ system, creating, 312, 333-339
Faroult, Stephane (The Art of SQL), 1050
feature requests, tracking (see tracking systems)
Fernandez, Dan (regarding Visual Studio Express), 270
Fiddler, 766, 809, 815
client/server applications, debugging, 810-812
creating and executing requests, 812
downloading and setting up, 810
licensing for, 810
Fiddler (continued)
security uses of, 882
support for, 815
web application performance, improving, 813-815
web site for, 810
file-access problems, troubleshooting, 766, 767-770
FILEDB format, SVN repository, 558
file-locking problems, resolving, 1136, 1191-1193
Filemon, 766, 767, 771
capturing logs, 768
downloading and setting up, 768
exporting log to view, 770
filtering logs, 769
licensing for, 768
main window for, 768
support for, 771
viewing logs, 769
web site for, 767
files
accessing with fewer keystrokes, 1134, 1136-1141
comparing, 556, 590-593
finding, in Visual Studio, 342, 350-353
generating with templates, 211, 211-221
synchronizing on multiple systems, 1136, 1186-1188
FileSystem namespace provider, 1170
FileZilla, 1135, 1152, 1157
connecting to remote server, 1152
GUI for, 1152
installing, 1152
licensing for, 1152
queuing file transfers, 1155
support for, 1156
transferring files, 1154
web site for, 1152
Find the Bug: A Book of Incorrect Programs (Barr), 835
Firefox, developing web pages in, 1090, 1091-1097
FitNesse, 432, 469, 480
configuring for .NET, 471
downloading and setting up, 469
Excel conversions of, 479
licensing for, 469
main window of, 470
project for, creating, 471-473
requirements for, 469
support for, 480
test specification, creating, 473-475
test suites, creating, 479
tests, creating, 475-479
tests, customers creating, 470
web site for, 469
Wikis used by, 470
FlexWiki, 668, 690, 694
adding pages to Wiki, 692
downloading and installing, 690
editing a Wiki page, 691
licensing for, 690
subscribing to Wiki with RSS, 692
support for, 694
tools enhancing, 693
web site for, 690
FlexWikiEmacsMode, 693
FlexWikiPad, 693
Flow Engine, NxBRE, 135, 136, 140
Flowers, Jay
"A Recipe for Build Maintainability and Reusability", 637
developer of CI Factory, 649
fonts used in this book, xxxviii
Ford, Sara
regarding Managed Stack Explorer (MSE), 809
regarding MSBee, 614
regarding TFS Administration Tool, 727
fortune utility, Cygwin, 1206
forums, creating, 668, 677-685
FOSS (Freeware/Open Source Software)
licenses for, xxxi
reasons to use, xxix
support for, xxx
Foundations of Atlas: Rapid AJAX Development with ASP.NET 2.0 (Apress), 52
Fowler, Chad (Programming Ruby, The Pragmatic Programmers' Guide), 544
Fowler, Martin
"Continuous Integration", 626
"Inversion of Control Containers and the Dependency Injection Pattern", 980
web site about refactoring, 428
Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries (Cwalina and Abrams), 340, 988
Framework help tool, Mono, 950
frameworks
blogs about, 989
books about, 988
compared to libraries, 917
for decoupled applications, 919, 972-979, 980-987
for enterprise application infrastructure, 918, 919-927
for examining .NET Framework code, 918, 956-962
for implementing MVC in .NET web applications, 918, 963-971
for .NET applications on non-Windows platforms, 918, 943-954
for web applications, 918, 928-935
for Windows Mobile applications, 918, 937-942
when to write, 917
whether to write, 917
FreeTextBox, 5, 39
downloading and setting up, 40
licensing for, 40
support for, 42
using, 40
web site for, 40
Freeware/Open Source Software (see FOSS)
Friedl, Jeffrey E.F. (Mastering Regular Expressions), 309
Fritchman Thompson, Barbara (web site by), 835
FTP sessions, Explorer-like interface for, 1135, 1152-1155
Function namespace provider, 1170
functions, in NAnt, 599
FwDocGen, 693
FwSync, 693
FxCop, 391, 418, 427
analysis summary generated by, 421
analyzing assemblies, 420
command line execution of, 425
compared to CLR SPY, 783
downloading and setting up, 420
licensing for, 419
messages, clearing, 422
messages generated by, 420
project for, creating, 420
requirements for, 419
results file of, 426
security uses of, 882
specifying rules used by, 422-424
support for, 426
web site for, 419
G[ Top ]
GAIM, 668, 719, 722
accounts for, setting up, 720
installing, 719
instant messaging using, 722
licensing for, 719
networks supported by, 719
support for, 722
web site for, 719
Galbraith, Ben (Pragmatic Ajax: A Web 2.0 Primer), 52
Gamma, Erich (Design Patterns: Elements of Reusable Object-Oriented Software), 428, 922, 989
Gang of Four book, 989
garbage collection
in COM, 1109
problems with, detecting, 787
GCC (GNU Compiler Collection), in Cygwin, 1201
Gehtland, Justin (Pragmatic Ajax: A Web 2.0 Primer), 52
generating code (see code generation)
getfacl utility, 1203
GhostDoc, 312, 313, 319
customizing, 318
documentation, updating, 318
downloading and setting up, 313
enabling generation of XML documenation, 313
indexers, documenting, 317
inherited classes, documenting, 314
licensing for, 313
methods with "of the" reordering, documenting, 317
methods with single-word names, documenting, 317
no inheritance, documenting for, 315
no overrides, documenting for, 315
overridden methods, documenting, 314
support for, 319
web site for, 313
GhostScript, required for PDFCreator, 328
GNU Compiler Collection (GCC), in Cygwin, 1201
GNU Public License, 328
GotDotNet web site, 248
Graff, Mark G. (Secure Coding: Principles and Practices), 915
Graphic Designer (see Expression Graphic Designer)
graphics (see images)
graphs, adding to applications, 134, 176-183
Greenwood, Justin (cocreator of MyGeneration), 222
grep utility, using in Cygwin, 1199
Griffiths, Ian (Programming Windows Presentation Foundation), 132
Guckenheimer, Sam (Software Engineering with Microsoft Visual Studio Team System), 762
Gudgin, Martin (Essential XML Quick Reference: A Programmer's Reference to XML, XPath, XSLT, XML Schema, SOAP, and More), 1021
Gunderloy, Mike
Daily Grind, 1207
developer of Command Prompt Here, 1157
Gunnerson, Eric (Regex 101 blog), 309
Guthrie, Scott (ScottGu's Blog), 52
GZip compression, SharpZipLib, 192
H[ Top ]
Haack, Phil ("Benevolent Dictator" of Subtext), 689
Haley, Jason
articles about obfuscation, 877
regarding Development Tools for WinFx, 131
regarding Expression Graphic Designer, 90
Hamilton, Bill (Programming SQL Server 2005), 1050
Hamilton, Ross (article about Agile), 727
Hanselman, Scott
blog of TCPView walkthrough, 773
developer of Command Prompt Here, 1157
Ultimate Developer and Power User Tool List, 1207
hard-coded dependencies, 919, 972-979, 980-987
Harold, Elliotte Rusty
Effective XML: 50 Specific Ways to Improve Your XML, 1021
XML in a Nutshell, 1021
Hatcher, Erik (Java Development with Ant), 600, 665
Hawley, Matt (developer of Unleash It), 657
head, in source-control system, 554
Head Rush Ajax (McLaughlin), 52
Heckman, Rocky (educational videos by), 915
Hederman, Sean (developer of Reflector.Diff), 166, 172
Helander, Mats (developer of NPersist), 1072
Helm, Richard (Design Patterns: Elements of Reusable Object-Oriented Software), 428, 922, 989
help files, creating from XML comments, 312, 322-326
Hendrickson, Elisabeth (regarding Watir), 549
Hibernate, 1054, 1085
Hibernate: A Developer's Notebook (Elliott), 1085
Hibernate in Action (Bauer and King), 1085
Hilyard, Jay (C# Cookbook), 207
Holm, Christian (Dissecting a C# Application: Inside SharpDevelop), 309
Holmes, Marc
blog by, 666
Expert .NET Delivery Using NAnt and CruiseControl.NET, 249, 600, 665
Holtzer, Matan (developer of MSBuild Sidekick), 626
Holzschlag, Molly E. (The Zen of CSS Design: Visual Enlightenment for the Web), 1133
Hook, David (regarding Bouncy Castle Cryptography API), 906
Hopkins, Bruce (Professional DotNetNuke 4: Open Source Web Application Framework for ASP.NET 2.0), 988
Hopkins, John T.
regarding Dotfuscator, 878
regarding Remote Assistance, 710
regarding Skype, 718
Hounshell, Dan
regarding ConnectionStrings.com, 1030
regarding Oracle Developer Tools for Visual Studio .NET, 1045
regarding Oracle SQL Developer, 1050
How to Break Software Security (Whittaker and Thompson), 915
"How to configure a computer to receive Remote Assistance offers in Windows Server 2003 and in Windows XP", 696
"How to setup a .NET Development Tree Wrapup" (Roberts), 637
Howard, Michael
blog by, 916
19 Deadly Sins of Software Security, 915
Writing Secure Code, 881, 914
Howard, Rob (CEO of Telligent Systems, creators of Community Server), 685
Howell, Matt (developer of NPlot), 185
HOWTO: Pick an open source license (Burnette), xxxi
HRF files, for NxBRE, 138
HTML
accessibility of, ensuring, 1091, 1126-1129
spell checking, 342, 359-365
validity of, ensuring, 1091, 1123-1126, 1130-1131
HTML Tidy, 1130, 1132
accessing, 1130
cleaning up web pages, 1130
licensing for, 1130
support for, 1131
web site for, 1130
HTML/ASP.NET Spell Checker, 342, 359, 366
customizing, 364
installing, 360
licensing for, 360
requirements for, 360
spell checking
current file, 360
multiple files, 361-363
XML files, 363
support for, 365
using with custom web controls, 365
web site for, 360, 365
HTML-based help, creating from XML comments, 312, 322-326
HTMLTidy, 1091
HTTP Logging console, Web Development Helper, 1105
HTTP traffic
tracking, 1105
troubleshooting problems with, 766, 809-815
Hunt, Andy
Pragmatic Unit Testing in C# with NUnit, 549
Programming Ruby, The Pragmatic Programmers' Guide, 544
Hurwitz, Dan
Programming ASP.NET, 51
Programming .Net Windows Applications, 79
I[ Top ]
IDE (Integrated Development Environment), 250
editing text files with features of, 251, 293-296
for PowerShell, 1135, 1177-1180
integrating nxslt2 into, 995
IL (Intermediate Language), 838
books about, 876
editing and debugging, 839, 856-867
examining, 839, 839-849
ILDASM (IL Disassembler), 839, 849
adding to Send To menu, 840
adding to Visual Studio, 840
analyzing assemblies written by others, 847-849
analyzing code, 845
disassembling code, 842
IL code results, viewing, 844
licensing for, 840
setting up, 840
support for, 849
tutorial for, 843
web site for, 840
Illig, Travis (developer of CR_Documentor), 320
image stitching, with Expression Graphic Designer, 88
images
creating for WPF, 81, 82-89
creating from applications, 312, 328-332
creating with Expression Graphic Designer, 83
indexers, documenting, 317
indexes, creating with Lucene.Net, 152-156
Indigo blog (by Nicholas Allen), 107
Indigo (see WCF (Windows Communication Foundation))
inetd utility, Cygwin, 1205
Inference Engine, NxBRE, 135, 138, 142
inherited classes, documenting, 314
Inside Microsoft .NET IL Assembler (Lidin), 876
installation files (see MSI files)
instant messaging, 668, 719-722
Integrated Development Environment (see IDE)
IntelliSense
code snippets, 259
in PowerShell IDE, 1179
Interactive Designer (see Expression Interactive Designer)
Intermediate Language (see IL)
Internet Explorer
developing web pages in, 1090, 1098-1101
DOM objects, monitoring in, 1090, 1109-1115
DOM objects, working with at runtime, 1090, 1116-1121
memory leaks in, 1090, 1109-1115
Interop calls, monitoring, 766, 782-792
"Introduction to Regular Expressions" (Osherove), 297
"Inversion of Control Containers and the Dependency Injection Pattern" (Fowler), 980
Inversion of Control (IoC), 972, 980
IoC (Inversion of Control), 972, 980
Israel, Shel (Naked Conversations: How Blogs are Changing the Way Businesses Talk with Customers), 46, 727
iTextSharp, 203, 207
creating PDFs, 203-206
downloading, 203
licensing for, 203
manipulating PDFs, 206
support for, 207
web site for, 203
J[ Top ]
Java Development with Ant (Hatcher and Loughran), 600, 665
JavaScript, 1090
services for, in Atlas, 13
troubleshooting, 1090, 1102-1107
Jeffries, Ron (article on defect-tracking system), 730, 762
Jeremiah, Rhys (developer of DOM Helper), 1122
JIT (Just-in-Time) compiler, 838
Johansson, Roger (developer of NPersist), 1072
Johnson, Brian (Working With Microsoft Visual Studio 2005), 382
Johnson, Ralph (Design Patterns: Elements of Reusable Object-Oriented Software), 428, 922, 989
Just-in-Time (JIT) compiler, 838
JxBRE, 134
K[ Top ]
Kernighan, Brian W. (The Practice of Programming), 835
Key, Jeff (developer of Snippet Compiler), 291
Khan, Hassan (regarding Anti-Cross Site Scripting Library), 908
King, Gavin (Hibernate in Action), 1085
King, Jason (Cross-Platform .NET Development: Using Mono, Portable.NET), 309
Kiviat graphs, 399
Kohrs, Brian (regarding SVN 1-Click Setup), 561
Kothari, Nikhil
blog by, 52
developer of Web Development Helper, 1102, 1108
Kruger, Mike (Dissecting a C# Application: Inside SharpDevelop), 309
Krypton Toolkit, 54, 69, 74
downloading and setting up, 70
expanding groups, 72
licensing for, 69
support for, 74
three-pane application, creating, 70-72
web site for, 69
ksh shell, using in Cygwin, 1201
L[ Top ]
label, in source-control system, 555
Lagerblad, Jonas (fork for NDoc), 323
Lam, Kevin (regarding Anti-Cross Site Scripting Library), 908
Lawrence, Eric
developer of Fiddler, 809
developer of SlickRun, 1142
lazy loading, O/RM, 1053
Lean Software Development (Poppendieck and Poppendieck), 595, 665
Learning Windows Communication Foundation (Leroux Bustamante), 132
LeBlanc, David
19 Deadly Sins of Software Security, 915
Writing Secure Code, 881, 914
Ledgard, Josh (scooblog), 383
Leroux Bustamante, Michelle
Learning Windows Communication Foundation, 132
web sites by, 132
Less MSIérables, 1135, 1149, 1151
command line execution of, 1150
downloading, 1149
extracting files from MSI file, 1149
licensing for, 1149
requirements for, 1149
support for, 1151
viewing installation details, 1150
web site for, 1149
less utility, using in Cygwin, 1199
Lhotka, Rocky
developer of CSLA framework, 210
web site for, 249
LibCheck, 133, 161
churn reports, analyzing, 164
churn reports, generating, 163
command line parameters for, 165
downloading and setting up, 161
licensing for, 161
modifications of, text files for, 165
store files for, generating, 162
support for, 166
web site for, 161
Liberty, Jesse
Programming ASP.NET, 51
Programming .Net Windows Applications, 79
libraries (see code libraries)
Lidin, Serge (Inside Microsoft .NET IL Assembler), 876
Linwood, Jeff (Pro Hibernate 3), 1085
list controls, XP Common Controls, 58-60
Lister, Timothy (Peopleware: Productive Projects and Teams), 727
locked files, resolving, 1136, 1191-1193
log formats, parsing, 767, 818-825
log4j framework, 143
log4net, 133, 143, 149
appenders in, 146
configuring, 148
downloading and setting up, 144-145
layouts in, 147
licensing for, 144
loggers in, 146
managing context for, 148
performance of, 148
support for, 149
web site for, 143, 207
logfiles
creating, 133, 143-149
parsing with ReguLazy, example of, 304-305
used by STV, 122
Logging application block, Enterprise Library, 919, 920
login controls, XP Common Controls, 60
LogParser, 767, 818, 825
command line execution of, 821
COM-scriptable interface for, 822-825
downloading and setting up, 819
input formats for, 819
licensing for, 818
output formats for, 820
queries, constructing, 820
requirements for, 819
SQL statements used by, 819
support for, 825
web site for, 818
Loney, Kevin (Oracle Database 10g - The Complete Reference), 1050
Loughran, Steve (Java Development with Ant), 600, 665
Lowy, Juval
Programming .NET Components, 413
Programming WCF Services, 132
lpr utility, Cygwin, 1205
Lucene.Net, 133, 150, 160
analyzers in, 154
APIs in, 151
downloading and setting up, 150
history of, 151
indexes
creating, 152-156
searching, 156-160
licensing for, 150
requirements for, 150
streamers in, 154
support for, 160
web site for, 150
Luo, Weifen (developer of DockPanel Suite), 63, 69
M[ Top ]
MagicWords, in SlickRun, 1136
Magnifixer, 1135, 1145, 1148
colors of display, capturing, 1147
colors of display, inverting, 1147
customizing, 1146
licensing for, 1145
magnification level of, 1147
support for, 1147
web site for, 1145
window for, parts of, 1146
Maguire, Steve (Writing Solid Code: Microsoft's Techniques for Developing Bug-Free C Programs), 835
Mahate, Shakeel (instructions for replacing Notepad with Notepad2), 294
mailing lists, creating, 668, 677-685
maintenance complexity metric, 406
"Make Your Apps Fly with the New Enterprise Performance Tool" (Robbins), 187
MakeMeAdmin.cmd, 881, 882, 912, 914
downloading and setting up, 912
dropping shortcuts or executables in, 914
licensing for, 912
opening command session with Administrator privileges, 913
support for, 914
using PrivBar with, 914
using SlickRun with, 914
web site for, 912
managed and unmanaged code, calls between, 766, 782-792
Managed Debugging Assistants (MDAs), 782
Managed Stack Explorer (MSE), 766, 805, 809
auto-refreshing thread lists and stack traces, 806
command line execution of, 807-809
licensing for, 805
main window for, 805
process information, 805
requirements for, 805
running, 805
stack traces, logging, 807
support for, 809
web site for, 805
Managing Agile Projects (Augustine), 727
managing projects (see project management)
mapping files, O/RM, 1053
eliminating need for, 1054, 1079-1084
generating, 1054, 1072-1078
Margosis, Aaron
blog by, 916
developer of MakeMeAdmin.cmd, 912
developer of PrivBar, 909
"Why you shouldn't run as admin...", 881
marshaling errors, finding, 788
Mastering Regular Expressions (Friedl), 309
Math module, EXSLT.NET, 1011
matrix-based tests, in MbUnit, 457-460
Maxon, Luke (developer of NUnitForms), 526, 532
May, Daren (analogy for code stability), 390
MbUnit, 432, 453, 462
assertions on counter objects, 462
data-driven testing, performing, 454-457
downloading and setting up, 453
licensing for, 453
matrix-based tests, performing, 457-460
naked fixtures in, 462
rolling back tests, 462
support for, 462
type-based tests, multiple instantiations of, 460-461
web site for, 453
mc (Midnight Commander) utility, Cygwin, 1206
McCabe, Thomas (introduced cyclomatic complexity), 388
McCafferty, Billy (article about NHibernate), 1085
McConnell, Steve
Code Complete, 340, 388, 427, 532, 727, 835
Software Project Survival Guide, 762
McCormack, Sean (developer of Zanebug), 463
McCulloch, Scott (Professional DotNetNuke 4: Open Source Web Application Framework for ASP.NET 2.0), 988
McLaughlin, Brett (Head Rush Ajax), 52
McMurtry, Craig (Microsoft Windows Communication Foundation Hands-on!), 132
MDAs (Managed Debugging Assistants), 782
MDI (Multiple Document Interface), 63
Means, W. Scott (XML in a Nutshell), 1021
memory leaks in Internet Explorer, 1090, 1109-1115
memory-allocation errors, finding, 793-797
Mensching, Rob
blog by, 666
developer of WiX, 662
menus, creating in Visual Studio Express Editions, 253-255
Mercuri, Marc (Microsoft Windows Communication Foundation Hands-on!), 132
merge, in source-control system, 555
message logs, used by STV, 122
messages, viewing with Control Spy, 76
method stubs, generating, 263
methods, documenting, 317
Meyer, Eric (Cascading Style Sheets: The Definitive Guide), 52, 1133
Microsoft ASP.NET Atlas (see Atlas)
Microsoft ASP.NET (see ASP.NET)
Microsoft Expression Graphic Designer (see Expression Graphic Designer)
Microsoft Expression Interactive Designer (see Expression Interactive Designer)
Microsoft Windows Communication Foundation Hands-on! (McMurtry, Mercuri, and Watling), 132
Microsoft's XML team's blog, 1021
Midnight Commander (mc) utility, Cygwin, 1206
Milano, Gaston (developer of CoolCommands), 343
Miller, Mark (maintenance complexity metric created by), 406
Miller, Matthias (developer of Drip), 1109
minidumps, 798, 799, 803
Minter, Dave (Pro Hibernate 3), 1085
Mir, Talhah (regarding TAM), 895
Mitchell, Scott (developer of skmFAQs), 333
Mitnick, Kevin (The Art of Intrusion), 881
mock classes and objects, 433, 522-525
Model-View-Controller (MVC) architecture, 918, 934
modules, generating with templates, 211-221
Monad (see PowerShell)
Mono, 918, 944, 956
Apache2 web server, module for, 948
applications, developing, 251, 270-281, 284-289
ASP.NET web applications, support for, 948
books about, 309, 988
C# compiler, invoking, 946
compilation of source components, 945
components of, 947
database connectivity libraries, 948
documentation for, 952
downloading and installing, 945
existing applications, compatibility with, 948
GNOME development integration, 947
Gtk# libraries, 952
licensing for, 944, 945
Microsoft compatibility layer, 947
open source .NET environment provided by, 948
other .NET tools used with, 953
requirements for, 944
support for, 955
testing installation of, 945
web site for, 944
XSP included with, 948
Mono: A Developer's Notebook (Dumbill and Bornstein), 309, 988
MonoDevelop, 251, 284, 290, 948
code completion, 287
installing, 284
licensing for, 284
main window, 284
NUnit integration in, 287
requirements for, 284
support for, 289
web site for, 284
Monodies, 954
Monologue blog, 989
MonoRail (see Castle MonoRail)
Monoresgen, 954
Monosn, 954
MSBee, 597, 610, 614
assembly output path, controlling, 613
compiling .NET 1.1 code, 613
downloading and installing, 611
licensing for, 611
support for, 614
Visual Studio projects, building, 612-613
web site for, 610
MSBuild, 597, 605, 606, 610
adding steps to build, 609
continuous integration, implementing, 609
downloading and setting up, 605
graphical interface for files in, 597, 619-625
licensing for, 605
MSBuild (continued)
prewritten tasks for, 597, 614-618
properties, 608
requirements for, 605
support for, 609
targets
overriding, 608
passing information between, 606
web site for, 605
MSBuild Community Tasks, 597
MSBuild Community Tasks Project, 614, 619
assembly, versioning, 617
downloading and setting up, 615
licensing for, 615
project, building, 615
support for, 618
web site for, 615
MSBuild Extras - Toolkit for .NET 1.1 (see MSBee)
MSBuild Sidekick, 597, 620, 626
adding items to build, 620
build file, previewing, 624
custom tasks, 623
dependencies between targets, 622
installing, 620
licensing, 620
main window for, 620
project
creating, 620
editing, 624
support for, 625
targets, 621
tasks, adding to target, 622
TFS build types, using, 625
web site for, 620
MSBuild Team Blog, 666
MSDN-style help, previewing XML comments as, 312, 320-321
MSE (see Managed Stack Explorer)
MSI files, extracting contents of, 1135, 1149-1150
MSIL (Microsoft Intermediate Language) (see IL (Intermediate Language))
multimedia, in rich UIs, 81, 90-96
Multiple Document Interface (MDI), 63
MVC (Model-View-Controller) architecture, 918, 934
My feature, Visual Studio Express Editions, 260
MyGeneration, 211, 212, 222
installing, 213
licensing for, 212
main window for, 213
MyMeta API, 218
requirements for, 213
support for, 221
templates
browsing and updating, 220
creating, 214-216
user input code, templating, 216
web site for, 212
MyMeta API, MyGeneration, 218
N[ Top ]
naim utility, Cygwin, 1206
Naked Conversations: How Blogs Are Changing the Way Businesses Talk with Customers (Scoble and Israel), 46, 727
namespace providers, 1170
namespaces
in PowerShell, 1170
in XML, 991
NanoContainer.NET, 987
NAnt, 597, 598, 604
build files, 599, 600-601
build scripts, creating and running, 277
building software, 602
documentation, creating, 603
downloading and setting up, 598
error handling using, 604
in continuous integration cycle, 604
licensing for, 598
running NUnit tests in, 448
support for, 604
targets, 599
tests, running, 603
web site for, 598
NAnt Build, 655
NAntContrib, 602
Nathan, Adam
developer of CLR SPY, 783, 792
developer of PINVOKE.NET, 354, 359
.NET and COM: The Complete Interoperability Guide, 354
web site for sharing PInvoke signatures, 279
Windows Presentation Foundation Unleashed, 132
NCover, 432, 480, 494
command line execution of, 481
downloading and setting up, 481
integrating into build, 487-488
integrating with MSBuild, 488
integrating with NAnt, 487
integrating with NUnit, 489-492
monitoring program execution, 482-485
output for, generating with TestDriven.NET, 495
output from, analyzing with NCoverExplorer, 494
requirements for, 480
sequence points, tracking program using, 485-487
starting, 481
support for, 493
web site for, 481
NCoverExplorer, 432, 504
downloading and setting up, 495
excluding portions of coverage, 497
filtering coverage, 498
integrating into build process, 499-503
integrating with CruiseControl.NET, 501
integrating with MSBuild, 501
integrating with NAnt, 499
licensing for, 495
requirements for, 495
summary of coverage results, 499
support for, 503
view of coverage results, customizing, 498
viewing coverage results with, 495-497
web site for, 495
NDepend, 391, 409, 418
browsing metrics, 416
downloading, 410
generating report, 412
including in automated build cycle, 417
interpreting report, 412-416
licensing for, 410
project for, creating, 410
support for, 417
warnings generated by, 411
web site for, 409
NDoc, 312, 322, 328
building documentation, 326
current status of, 322, 323
downloading and setting up, 323
fork for .NET 2.0, 323
licensing for, 323
requirements for, 323
support for, 326
viewing documentation, 326
web site for, 322
writing documentation compatible with, 323
NDoc05, 323
.NET and COM: The Complete Interoperability Guide (Nathan), 354
.NET applications
profiling, 766, 767, 793-797, 831-834
running on non-Windows platforms, framework for, 918, 943-954
troubleshooting while running, 766, 804-809
web applications, implementing MVC in, 918, 963-971
.NET Compact Framework (CF), 937
The .NET Developer's Guide to Windows Security (Brown), 915
.NET Framework
code, examining, 918, 956-962
developing applications for, 251, 270-281, 284-289
.NET Framework 1.1
building assemblies for, 597, 610-614
compiling with MSBee, 613
.NET Framework 3.0 (WinFx), 80
application development tools for, 82, 126-129
configuration files for, managing, 102-120
(see also WCF; WCF service; WPF; XAML)
.NET Framework Design Guidelines, 418
.NET internals, books about, 876
NetSpell, 134, 172, 176
downloading, 173
implementing spell checking in applications, 173-176
licensing for, 173
support for, 176
web site for, 172
network
problems with, troubleshooting, 766, 771-773
traffic paths, plotting, 767, 815-818
Neward, Ted (Shared Source CLI Essentials), 989
Newkirk, James
developer of NUnit, 433
Test-Driven Development in Microsoft .NET, 431, 549
newsgroups, creating, 668, 677-685
Nguyen, Minh T. (Visual Studio .NET Tips and Tricks), 309, 382
NHibernate, 1054, 1062
compared to NPersist, 1064
downloading and setting up, 1055
entities
creating, 1056-1058
using, 1060
integrating with Windsor Container, 977-979
licensing for, 1055
mapping files, creating, 1058
retrieving records, 1061
support for, 1062
web site for, 1055
web sites about, 1085
19 Deadly Sins of Software Security (Howard, LeBlanc, and Viega), 915
*nix shells, running in Windows, 1136, 1194-1207
NMock 2.0, 433, 510, 521
downloading and setting up, 511
dynamic mock objects
generating, 513-515
testing external systems using, 516-521
licensing for, 511
stubs, testing code using, 515
support for, 521
terminology used by, 511-513
web site for, 511
nondestructive editing, with Expression Graphic Designer, 88
nondeterministic failures, forcing, 787
Norton, Darrell (developer of SourceSafe Binding Remover), 587
Notepad, example implementation of, 252-268
Notepad2, 251, 293, 297
downloading and setting up, 294
licensing for, 293
replacing Notepad with, 294
support for, 296
using, 294-296
web site for, 293
note-taking window, with SlickJot, 1141
notifications, viewing with Control Spy, 76
NPersist, 1054, 1063, 1072
compared to NHibernate, 1064
context object for, 1068
database, creating, 1064
downloading and installing, 1063
licensing for, 1063
mapping file, creating, 1067
object model, creating, 1065
performance of, 1063
queries, executing, 1070
support for, 1071
web site for, 1063
NPlot, 134, 176, 185
charts, creating, 177-181
charts, generating from data sources, 182
data for charts, specifying, 181
downloading and setting up, 177
licensing for, 177
requirements for, 177
support for, 183
web site for, 176
NProf, 767, 832, 835
installing, 832
licensing for, 832
project for
creating, 832
monitoring, 833
statistics displayed by, 833
support for, 834
web site for, 832
NSort, 134, 185, 188
licensing for, 185
setting up, 185
sorting algorithms used by, 186
support for, 187
using, 186
web site for, 185
NTBugtraq mailing list, 915
NTime, 433, 532, 537
downloading and setting up, 533
licensing for, 533
support for, 536
tests
implementing, 534-536
running, 536
web site for, 533
NUnit, 432, 433, 450
assertions, adding, 447
assertions, testing, 437
cleaning up objects after testing, 439-441
command line execution of, 448
downloading and setting up, 434
failed tests, indicators for, 437
ignoring tests (not running), 441
initializing objects for testing, 439-441
licensing for, 434
Lucene.Net requirements for, 150
NxBRE requirements for, 135
passed tests, indicators for, 435
projects in, 443
support for, 449
test fixtures
hierarchies of, 442-443
identifying classes as, 434
test methods, creating, 434
tests
grouping, 444
requiring configuration files, running, 444
running, 435
running from multiple assemblies, 443
running in NAnt, 448
thrown exceptions, testing for, 438
web site for, 434
wrapping tests into continuous integration, 449
NUnit Code Snippets for Visual Studio 2005, 432, 450, 452
documentation for, 452
downloading and setting up, 451
licensing for, 451
support for, 452
using code snippets from, 451
web site for, 451
NUnit integration, in MonoDevelop, 287
NUnitForms, 433, 526, 532
downloading and setting up, 526
licensing for, 526
support for, 531
testing custom controls, 530
testing forms with controls, 527-530
types of tests used with, 527
web site for, 526
NxBRE, 133, 134, 143
binder file, 142
command line console for, 135
downloading and setting up, 135
Flow Engine, 135, 136, 140
implementing an engine, 139
Inference Engine, 135, 138, 142
licensing for, 135
requirements for, 135
support for, 142
web site for, 135, 208
nxslt2, 992, 993, 995
command line options for, 993
custom URLs, resolving, 994
downloading and setting up, 993
EXSLT.NET extensions in, 994
formatting (pretty-print), 994
integrating into IDEs, 995
licensing for, 993
multiple outputs, 994
requirements for, 993
support for, 995
transforming documents, 994
O[ Top ]
obfuscation, 839, 869-875
object lifespans, monitoring, 786
ObjectMapper, 1054, 1072, 1078
configuring, 1073
domain model, creating, 1074
downloading and installing, 1073
files, creating from existing data source, 1073
licensing for, 1073
support for, 1078
UML diagrams, working with, 1077
web site for, 1073
Object/Relational Mapping (see O/RM)
objects
mock, 433, 522-525
working with, in PowerShell, 1171-1173
ODT (see Oracle Developer Tools for Visual Studio .NET)
Office 2003's "look and feel" for Windows Forms applcations, 54, 69-74
Onion Blog, 52
Onion, Fritz
blog by, 52
Essential ASP.NET with Examples in C#, 51
online communities, 668, 677-685
online resources (see web sites)
Open Source Initiative (OSI), license listing by, xxxi
Open Source Software (see FOSS (Freeware/Open Source Software))
OpenNETCF.org, 937
OpenPGP message format, 903-905
Oracle Database 10g - The Complete Reference (Loney), 1050
Oracle databases
books about, 1050
using in Visual Studio, 1026, 1038-1044
using in Windows, 1026, 1045-1050
web site about, 1051
Oracle Developer Tools for Visual Studio .NET, 1026, 1038, 1045
accessing, 1039
code for database objects, generating, 1042
connections, adding, 1039
downloading and installing, 1039
licensing for, 1038
PL/SQL procedures, creating and running, 1043
support for, 1045
tables, managing, 1039-1042
web site, 1038
Windows Firewall causing problems with, remedy for, 1039
Oracle SQL Developer, 1026, 1045, 1050
connection for, specifying, 1046
database objects, browsing, 1047
downloading and installing, 1046
exporting data, 1048
licensing for, 1045
querying data, 1048
support for, 1050
updating data, 1048
web site for, 1045
Oracle Technology Network (OTN), 1051
O'Reilly's XML site, 1021
O/RM (Object/Relational Mapping), 1052-1054
books about, 1085
DataSets used with, 1052
entities, 1053
generating, 1054, 1072-1078
mapping to database, 1054, 1054-1062, 1062-1071
lazy loading, 1053
mapping files, 1053
eliminating need for, 1054, 1079-1084
generating, 1054, 1072-1078
query language for, 1054
web sites about, 1085
Orstein, David (developer of FlexWiki), 690
Osherove, Roy
developer of Regex Kit Visualizers, 827
developer of ReguLazy, 309
developer of The Regulator, 297, 302
"Introduction to Regular Expressions", 297
OSI (Open Source Initiative), license listing by, xxxi
OTN (Oracle Technology Network), 1051
overridden methods, documenting, 314
Owens, Mike (The Definitive Guide to SQLite), 1050
P[ Top ]
packages, in CI Factory, 637
packaging Visual Studio enhancements, 342, 378-381
PAL (Platform Adaptation Layer), Rotor, 959
parser for XML, 990
partial page updates
optimizing with Atlas, 8-10
rendering with Atlas, 7-8
patchutils utility, Cygwin, 1206
Patton, Ron (Software Testing), 762
Payne, Jonathan (developer of VSFileFinder), 354
PDFCreator, 312, 328, 332
accessing as printing device, 329
changing output format, 330
combining documents, 331
downloading and installing, 328
GhostScript required for, 328
licensing for, 328
support for, 332
web site for, 328
PDFs, creating, 134, 202-207, 312, 328-332
Peikari, Cyrus (Security Warrior), 881
Peli's Reflector Addins, 391, 396
downloading and setting up, 392
licensing for, 392
Reflector.CodeMetrics, 393-394
Reflector.Graph, 392
requirements for, 392
support for, 394
web site for, 392, 394
penetration testing, 887
Peopleware: Productive Projects and Teams (Demarco and Lister), 727
performance
bottlenecks, identifying, 767, 831-834
monitoring during test execution, 432, 462-467
of web applications, improving, 813-815
testing, strategies for, 533
Zanebug monitoring, 467
performance tests, 433, 532-536
Peshansky, Igor (regarding Cygwin), 1207
Petrény, Zsolt (developer of Dotnet IL Editor), 856, 867
Petzold, Charles (Programming Microsoft Windows Forms), 78
PicoContainer.NET, 919, 980, 981, 988