ASP.Net Professional Secrets


Go beyond the obvious and explore the secrets behind ASP.NET with this comprehensive guide. Leading authorities in the field expose the hidden functionality within the ASP.NET model, revealing everything from Web controls and screen scraping to configuration and versioning techniques. These expert tips and tricks will help you gain the skills you need to quickly develop your own practical ASP.NET applications.
Read More Show Less
... See more details below
Available through our Marketplace sellers.
Other sellers (Paperback)
  • All (7) from $1.99   
  • New (3) from $19.78   
  • Used (4) from $1.99   
Sort by
Page 1 of 1
Showing All
Note: Marketplace items are not eligible for any coupons and promotions
Seller since 2009

Feedback rating:



New — never opened or used in original packaging.

Like New — packaging may have been opened. A "Like New" item is suitable to give as a gift.

Very Good — may have minor signs of wear on packaging but item works perfectly and has no damage.

Good — item is in good condition but packaging may have signs of shelf wear/aging or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Acceptable — item is in working order but may show signs of wear such as scratches or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Used — An item that has been opened and may show signs of wear. All specific defects should be noted in the Comments section associated with each item.

Refurbished — A used item that has been renewed or updated and verified to be in proper working condition. Not necessarily completed by the original manufacturer.

2003-10-10 Paperback 1 New 0764526286 Ships Within 24 Hours. Tracking Number available for all USA orders. Excellent Customer Service. Upto 15 Days 100% Money Back Gurantee. Try ... Our Fast! ! ! ! Shipping With Tracking Number. Read more Show Less

Ships from: Bensalem, PA

Usually ships in 1-2 business days

  • Canadian
  • International
  • Standard, 48 States
  • Standard (AK, HI)
  • Express, 48 States
  • Express (AK, HI)
Seller since 2008

Feedback rating:


Condition: New

Ships from: fallbrook, CA

Usually ships in 1-2 business days

  • Standard, 48 States
  • Standard (AK, HI)
Seller since 2008

Feedback rating:


Condition: New

Ships from: Chicago, IL

Usually ships in 1-2 business days

  • Standard, 48 States
  • Standard (AK, HI)
Page 1 of 1
Showing All
Sort by
Sending request ...


Go beyond the obvious and explore the secrets behind ASP.NET with this comprehensive guide. Leading authorities in the field expose the hidden functionality within the ASP.NET model, revealing everything from Web controls and screen scraping to configuration and versioning techniques. These expert tips and tricks will help you gain the skills you need to quickly develop your own practical ASP.NET applications.
Read More Show Less

Product Details

  • ISBN-13: 9780764526282
  • Publisher: Wiley
  • Publication date: 9/29/2003
  • Series: Secrets Series, #3
  • Edition number: 1
  • Pages: 1200
  • Product dimensions: 7.42 (w) x 9.24 (h) x 2.13 (d)

Meet the Author

Bill Evjen is a technical director for Reuters, the founder and executive director of INETA, and an author and speaker on ASP.NET and Web services.

Thiru Thangarathinam is an MCSD and MCAD and specializes in developing distributed applications using .NET for Intel Corporation.

Bill Hatfield is a best-selling author and editor of the technical journal Hardcore Visual Studio .NET.

Doug Seven is a .NET Framework author and speaker and cofounder of the online training resource DotNetJunkies.

Srinivasa Sivakumar is a Technical Team Leader for Thomson Financials and an author and speaker specializing in Web and mobile solutions using .NET technologies.

Dave Wanta is the founder of the ASP.NET directory site and a speaker for INETA.

Jason T. Roff is an author, software developer, and owner of First Factory, Inc., a Web-hosting company specializing in Microsoft technologies.

Read More Show Less

Table of Contents

Preface vii
Part I Starting the ASP.NET Journey 1
Chapter 1 Introducing .NET and ASP.NET 3
Welcome to .NET 3
A Closer Look at the .NET Foundation 8
What's New in .NET 1.1? 13
Summary 16
Chapter 2 Creating ASP.NET Applications with Visual Studio .NET 17
Visual Studio .NET for ASP.NET 18
Examining Hidden Items in Visual Studio .NET 25
Discovering the Power Behind the Server Explorer 33
Letting Visual Studio .NET Macros Do the Work for You 46
Summary 49
Chapter 3 Using the ASP.NET Web Matrix Project 51
Exploring the ASP.NET Web Matrix Project 52
Working with the Web Matrix 59
Extending the Web Matrix 68
Summary 80
Part II Controls 81
Chapter 4 The What, Where, When, Why, and How of Controls 83
Why Make the Change to ASP.NET? 84
An Overview of ASP.NET Server Controls 85
HTML Server Controls 98
Web Server Controls 104
Formatting Web Server Controls 108
Summary 115
Chapter 5 Making HTML Server Controls Work for You 117
Creating HTML Server Controls 118
Playing with HTML Elements 123
Specific HTML Server Controls Provided by Visual Studio .NET and the Web Matrix 140
Summary 155
Chapter 6 Basic Web Controls 157
Introducing Web Server Controls 158
Displaying Text Using Web Server Controls 159
Form Input Web Server Controls 161
Form Submission Controls 189
Navigation Controls 197
Image Controls 199
Layout Controls 201
Summary 207
Chapter 7 Understanding List Web Controls 209
Paging Data 210
Sorting Data 242
Editing Data in a DataGrid 251
Summary 271
Chapter 8 Manipulating Rich Web Controls 273
Using the Calendar Control 274
The AdRotator Control 290
Summary 293
Chapter 9 Taking Advantage of Validation Server Controls 295
Introducing Validation 296
.NET to the Rescue! 298
Summary 327
Chapter 10 User Controls: Building Reusable Pieces of Code 329
Introducing User Controls 330
Building a Simple User Control 331
Creating a Navigation User Control 337
Exposing Properties and Methods from User Controls 341
Dynamically Loading User Controls 347
Creating User Controls Using the Code-Behind Technique 354
Summary 361
Chapter 11 Building Custom Controls 363
Creating Custom Controls with the Control Class 364
Creating Custom Controls Using the WebControl Class 375
Building a Composite Control 379
Raising Events from Controls 385
Creating a Templated Control 385
Causing Client-Side Postback from a Server Control 393
Using a Custom Control in Visual Studio .NET 399
Summary 400
Part III Applications as a Whole 401
Chapter 12 An In-Depth Look at the .aspx Page 403
The Languages of Your Pages 404
Understanding Inline Versus Code-Behind 408
Working with ASP.NET Directives 417
Working with Page Events 425
Understanding the Page Lifecycle 426
Understanding the Page Class 428
Summary 430
Chapter 13 Understanding the Entire Application 431
Hosting Applications on a Server 432
A Visual Studio .NET ASP.NET Application 440
Versioning and Runtimes 441
Looking at Global.asax 447
Summary 452
Chapter 14 Debugging ASP.NET Pages and Handling Exceptions 453
Debugging ASP.NET Web Applications 454
ASP.NET Tracing 464
Handling Exceptions in an ASP.NET Web Application 472
Summary 481
Chapter 15 Controlling Security for Your ASP.NET Applications 483
Authentication, Authorization, and Impersonation 484
Overview of Authentication in ASP.NET 485
Authorization 501
Impersonation 503
Summary 507
Chapter 16 Packaging and Deploying Your ASP.NET Applications 509
Introduction to Setup and Deployment 510
Structure of an ASP.NET Web Application 510
Deployment Options Supported by .NET 511
Summary 525
Chapter 17 Interoperability 527
COM Interop: Using COM within .NET 528
Using .NET from Unmanaged Code 542
Summary 552
Chapter 18 Networking: Understanding E-mail in .NET 553
Overview of E-mail 554
Exploring System.Web.Mail 559
E-mailing a Web Page 563
Sending International E-Mails 569
Troubleshooting System.Web.Mail 571
Building Your Own SmtpClient Component 575
Summary 595
Chapter 19 Networking: Understanding File I/O in .NET 597
Overview of the System.IO Namespace 598
Manipulating Text Files 603
Manipulating Binary Files 605
Reading and Writing Data Asynchronously 607
Summary 613
Part IV ASP.NET and Data 615
Chapter 20 Understanding ADO.NET 617
Realizing the Dream of Common Database Access 618
Picking a .NET Data Provider 619
ADO.NET Objects 620
Making Your Connection 621
Issuing Commands 624
Retrieving and Displaying Data with a DataReader 632
Feedback Reader 637
Calling Stored Procedures 639
The Disconnected Database: DataAdapter and DataSet 644
Summary 647
Chapter 21 Rendering and Data Binding with ADO.NET Objects 649
Data Binding with ASP.NET Server Controls 650
Implementing Sorting and Paging Using a DataGrid Control 663
In-Place Editing of a DataGrid 667
Embedding One DataGrid within Another DataGrid Control 673
Summary 680
Chapter 22 XML and ADO.NET 681
XML Support Provided by the DataSet Object 682
The XmlDataDocument Object and ADO.NET 693
Retrieving XML Data Directly from SQL Server 705
Summary 708
Chapter 23 XML Namespaces 709
XML Support in .NET Framework 710
Summary 738
Part V Performance and Optimization 739
Chapter 24 Configuring Your Applications 741
Configuration File Locations and Meanings 742
Configuration File Structure 743
Categories and Settings 745
Consolidating and Locking Down Configuration Settings 756
Summary 759
Chapter 25 Applying Caching and Other Performance Enhancements 761
Understanding Caching 762
Understanding the Different Types of Caching 763
Creating a Callback Method for a Cached Item 788
Using Performance Counters Related to Caching 794
Summary 795
Chapter 26 State Management Techniques and Their Consequences 797
Introducing State Management 798
Client-Side State Management 798
Server-Side State Management 810
Summary 820
Part VI XML Web Services 821
Chapter 27 Understanding the Basics of XML Web Services 823
Introducing XML 824
XML, SOAP, and HTTP 825
Understanding the Problems That XML Web Services Address 826
The Composition of XML Web Services 827
Viewing and Testing XML Web Services 838
The Business of XML Web Services 849
Summary 851
Chapter 28 Building and Consuming XML Web Services 853
Building a Simple XML Web Service 854
Consuming an XML Web Service 860
From One XML Web Service to Another 879
Throwing SOAP Exceptions 883
Caching XML Web Services 885
Application Center Test (ACT) 887
Summary 896
Chapter 29 Taking XML Web Services One Step Farther 897
Asynchronous XML Web Services 898
Sending Images in Your SOAP Messages 903
Working with SOAP Headers 910
Overloading WebMethods 922
Tracing SOAP Messages 924
Summary 928
Chapter 30 Getting What You Need by Screen Scraping 929
Screen Scraping Niceties 101 930
The Screen Scraping Process 930
Stock Quote Example 931
The Delicate Nature of Screen Scraping 942
Building a Consuming Application 943
Summary 949
Part VII Mobile Development 951
Chapter 31 Building Wireless Applications 953
Online and Offline Applications 954
Mobile Application Development Challenges 955
Mobile Application Development Process 956
Summary 970
Chapter 32 Uncovering the Secrets of Mobile Controls 971
Mobile Controls 972
List Controls 988
Summary 1000
Chapter 33 Advanced Techniques for Building Mobile Applications 1001
Examining the ObjectList Control 1002
Examining the PhoneCall Control 1011
Providing a Common Look and Feel 1014
Writing Device-Specific Code 1025
Summary 1032
Appendix A Language Lookup: Visual Basic .NET 1033
Appendix B Language Lookup: C# 1055
Appendix C ASP.NET Resources 1079
Index 1081
Read More Show Less

First Chapter

ASP.NET Professional Secrets

By Bill Evjen Thiru Thangarathinam Bill Hatfield Doug Seven Srinisava Sivakumar Dave Wanta Jason T. Roff

John Wiley & Sons

ISBN: 0-7645-2628-6

Chapter One

Introducing .NET and ASP.NET

by Bill Evjen

If you are new to .NET-Welcome!

If you are a .NET Framework 1.0 veteran-Welcome to .NET version 1.1!

.NET 1.0 was introduced with tremendous excitement. It was original, answered many developers' problems, and truly leap-frogged any of the other technologies out there-especially in the realm of browser-based Internet application development-or ASP.NET.

.NET 1.1 and ASP.NET 1.1 are minor releases and should not be considered substantially different versions from 1.0. The next major revision of .NET and ASP.NET will come with the release of version 2.0.

This chapter introduces the .NET Framework 1.1 and also shows you what's new in ASP.NET 1.1.

Welcome to .NET

Every so often, a technology company needs to step back from itself, look at what it is trying to achieve, and then determine whether it needs to try a different approach. Microsoft did this as it stood back from the COM world it had created and asked itself, "Is there a better way?" The .NET Framework is this better way.

.NET is confusing to many people because the Microsoft marketing folks took hold of the name and started applying it to every product that Microsoft produced. .NET had almost nothing to do with many products that acquired the.NET moniker. This problem is slowly being corrected. More products are now coming from Microsoft without .NET in their titles.

Microsoft's short definition of .NET is Microsoft's platform for building XML Web services. But the .NET that I am talking about (and the .NET that you should be focused on understanding) is the .NET Framework itself.

Microsoft's .NET Framework is a new computing platform built with the Internet in mind, but without sacrificing the traditional desktop application platform. The Internet has been around for a number of years now, and Microsoft has been busy developing technologies and tools that are totally focused on it. These earlier technologies, however, were built on Windows Distributed InterNet Applications Architecture (DNA), which was based on the Component Object Model (COM). Microsoft's COM was in development many years before the Internet became the force that we know today. Consequently, the COM model has been built upon and added to in order to adapt it to the world of the Internet.

The .NET Framework enabled Microsoft to build everything from the ground up with the Internet in mind. Therefore, the .NET Framework focuses heavily on Internet-enabling your applications, whether these applications are thin-client or thick-client applications. Building a new platform from the ground up also allowed Microsoft to take a close look at how developers developed. Even more importantly, Microsoft began examining how to correct the problems developers experience and how to make them more productive in this new environment.

.NET is a collection of tools, technologies, and languages that all work together in a framework to provide the solutions necessary for easily building and deploying truly robust enterprise applications. These .NET applications can also communicate with one another and provide information and application logic, regardless of platforms and languages.

You might have seen this simple diagram of the .NET Framework before, but take a closer look at it now. Consider the .NET Framework as something that sits on an operating system. Presently, the operating systems that can take the .NET Framework include Windows Server 2003, Windows XP Professional, Windows 2000, and Windows NT.


Support for the .NET Framework on Windows NT is limited to functioning as a client. Windows NT does not support the Framework as a server.

At the bottom layer of the .NET Framework is the Common Language Runtime (CLR). The CLR is the engine that manages the execution of the code, takes care of object management, provides security, and so much more.

The next layer up from the CLR is the .NET Framework Base Class Libraries (BCL). The BCL layer contains classes, value types, and interfaces that are often used in the development process. The many classes in the BCL are organized into a series of namespaces.

The third layer of the .NET Framework includes the Windows Forms model (more on that shortly), along with the area that is the primary focus of this book-ASP.NET. Don't think of ASP.NET as the latest version of Active Server Pages-the one that comes after ASP 3.0. Instead, think of it as a dramatic new shift in Web application development. Using ASP.NET, it's now possible to build robust Web applications that are even more functional than Win32 applications of the past, a difficult feat because of the stateless nature of the Internet. ASP.NET offers a number of different solutions to overcome the traditional limitations on the types of possible applications. The ASP.NET section of the .NET Framework is also where the XML Web services model resides.

As I mentioned a moment ago, ASP.NET shares the top layer of the .NET Framework with Windows Forms applications. These are the traditional .exe applications, or Win32 thick-client applications. The programming models of the ASP.NET world and the Windows Forms world are quite similar, and these two models use the same objects from the Framework to accomplish their tasks. If you become a good ASP.NET programmer, you also become a good Windows Forms programmer. Interestingly enough, because the models are so similar, you can build a class that you can use in either your ASP.NET application or in a Windows Forms application.

Looking to the future

The .NET Framework is focused on how people will use technology in the future. One view (held not only by Microsoft) says that all devices and applications will one day be connected to the Internet. When this day arrives, people won't use the Internet just for the browser-based applications as they currently do, but also for telephones, televisions, microwaves, Xbox and PlayStation units, and much more (see Figure 1-2). All these devices connected by the Internet can't possibly be built on a single platform. The world will continue to have multiple platforms and languages at its disposal for a long time to come. Consequently, we need a common language that can communicate with the various platforms, applications, and devices.

XML and SOAP are the common languages now facilitating communication among platforms, applications, and devices. By using these languages, devices can communicate over the Internet in an easy and straightforward manner.

Microsoft enables you to start bringing this disparate but connected vision to reality with the .NET Framework. By building XML Web services, you are expressing objects and using XML and SOAP to communicate the object's data or the application logic that it might provide.

cross ref

XML Web services are considered part of the ASP.NET model and are covered in Part VI of this book.

You can also use your ASP.NET applications to consume data or application logic from other Web services on the Internet, regardless of the language or platform used in the creation of these Web services. Over time, more and more connections of applications with remote objects will use the XML Web services model in the .NET Framework.

Microsoft's .NET solution

Because of the prospect that the universe of devices and applications will be placed on the same medium and will be able to communicate with one another using a common language, Microsoft developed the .NET Framework. Developers using this platform can build their applications to take advantage now of this vision of the future.

Before the .NET Framework came along in 2002, Microsoft offered quite a number of tools and technologies for building a wide variety of applications. As a developer, you could choose the environment, language, or tool appropriate for what you were trying to accomplish.

For example, if you wanted to quickly build a thick-client application, you used Visual Basic. If you wanted to build low-level applications that gave you granular access to the platform, you used C++. If you wanted to build browser-based applications, you used Active Server Pages (ASP).

With the .NET Framework, Microsoft has taken the best of all these different worlds and merged them into a single environment-the .NET world, as shown in Figure 1-3.

Because of this new unified model, you need only one environment, one platform, and any .NET language to build any .NET application. It doesn't matter if the application is a desktop application, a browser-based application, a component, or even a driver. You now have a single environment to do all this work.

One of the main objectives of the Framework is to provide a simplified development model that eliminates a lot of the plumbing required to develop in the past. The .NET Framework gives developers more power over their applications. This framework uses the latest in Internet standards such as XML, SOAP, and HTTP. The applications that you build on this platform are easier to deploy and maintain.

.NET-capable IDEs

Instead of multiple development environments for building various types of applications, Microsoft provides a single development environment to build any type of .NET application. This development environment is Visual Studio .NET. It's the development environment that I recommend you use with this book as you build and work with your .NET applications.

Visual Studio .NET enables you to build your ASP.NET applications in a code-only manner (writing code directly) or by dragging and dropping objects onto a design surface. You can also use Visual Studio .NET to build thick-client applications or Windows Forms and to build your classes, components, and everything else you need.

Another development environment offered by Microsoft is the ASP.NET Web Matrix. This free tool is available from the ASP.NET Web site at It is a great tool to help you get a feel for building Web applications. Unlike Visual Studio .NET, however, the ASP.NET Web Matrix limits you to building only ASP.NET applications and XML Web services. You can't build any Windows Forms applications using the Web Matrix.

cross ref

You learn about the Visual Studio .NET environment in Chapter 2 and the ASP.NET Web Matrix environment in Chapter 3.


Besides these two Microsoft IDEs, other IDEs are capable of building .NET applications. One of the more popular development environments is Macromedia's Dreamweaver MX. This IDE enables you to build ASP.NET applications as well as many other types, such as PHP and ColdFusion applications.

You can also build ASP.NET applications by using Notepad and the compilers provided with the .NET Framework. In fact, you can type much of the code from this book into Notepad to build your ASP.NET applications.

The .NET languages

When developing on the Microsoft platform in the past, you chose the development language based on the type of application you wanted to build.

The .NET Framework has completely changed this scenario for us. The .NET Framework enables you to build any type of application or object that can be used in the .NET platform, and you can also use any of the .NET languages to build these applications.

For a language to be part of the .NET Framework, a language has to follow certain rules. The biggest and most important rule for inclusion is that the language must be an object-oriented language. Microsoft provides five languages with the .NET Framework: Visual Basic .NET, C#, C++.NET, JScript .NET, and now J#.

You now have a choice of which language you are going to use to build your ASP.NET applications. For instance, you are not limited to just using Visual Basic .NET to build your browser-based applications; you can also use C#, JScript .NET, or even J# to build a Web-based application.

Whenever this idea is presented, people always ask: Which is the better language to use? Does one language provide better performance than another?

The answer to both these questions is an emphatic NO. There isn't one language that is better than another. They all have access to the same classes and capabilities that are provided with the .NET Framework. If there is no difference in which language you can use to build your .NET applications, it then becomes simply a matter of style when deciding which of the languages to use.

In addition to the languages that are provided with the install of the .NET Framework 1.1, quite a number (more than 40) of third-party languages are capable of being used in the .NET platform to build your .NET applications. For instance, you can also build ASP.NET applications using COBAL or Perl. To use either of these applications, however, you must install the language yourself because neither is provided with the default install of the .NET Framework.

This book focuses on the two most popular .NET languages: Visual Basic .NET and C#.

A Closer Look at the .NET Foundation

The foundation of the .NET platform is the .NET Framework, which I introduced in the preceding section. The .NET Framework sits on top of the operating system and is made up of two parts, the Common Language Runtime and the Base Class Libraries. Each of these parts plays an important role in the development of .NET applications and services.

The Common Language Runtime

Many different languages and platforms provide a runtime, and the .NET Framework is no exception. Its runtime, however, is quite different from most.

The Common Language Runtime (CLR) in the .NET Framework manages the execution of the code and provides access to a variety of services that make the development process easier.

The CLR has been developed to be far superior to previous runtimes, such as the VB runtime, by providing the following functionality:

* Cross-language integration

* Code access security

* Object lifetime management

* Debugging and profiling support

Code that is compiled and targeted to the CLR is known as managed code. Managed code has the metadata needed for the CLR to provide the services of multilanguage support, code security, object lifetime management, and memory management.


Metadata is basically data about data or a description of the contents of a .NET component. This metadata is stored within the assembly manifest. In the past, it was difficult for components written in competing languages to interact with one another. The .NET Framework uses metadata so that .NET components are self-describing, making them easy to interoperate with other components.

Compilation to managed code

When creating a .NET application, use one of the .NET languages. After the code is written, you (or Visual Studio .NET) uses the language's compiler to compile the code down to Microsoft Intermediate Language (IL).


Excerpted from ASP.NET Professional Secrets by Bill Evjen Thiru Thangarathinam Bill Hatfield Doug Seven Srinisava Sivakumar Dave Wanta Jason T. Roff Excerpted by permission.
All rights reserved. No part of this excerpt may be reproduced or reprinted without permission in writing from the publisher.
Excerpts are provided by Dial-A-Book Inc. solely for the personal use of visitors to this web site.

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Terms of Use.
  • - Barnes & reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)