Application Development Using C# and .Net
Authors: Michael Stiefel, Robert J. Oberg
Venue:  (2001)

From the Book:PrefaceMicrosoft .NET is an advance in programming technology that greatly simplifies application development both for traditional, proprietary applications, and for the emerging paradigm of Web-based services. .NET is a complete restructuring of MicrosoftUs whole system infrastructure and represents a major learning challenge for programmers developing applications on Microsoft platforms. The new platform includes a new programming language C# and a major class library, the .NET Framework.This book covers important topics in the .NET Framework for experienced programmers. You do not need prior experience in C#, because there is a self-contained treatment, but you should have experience in some object-oriented language such as C++ or Java. The book could also be read by a seasoned Visual Basic programmer who has experience working with objects and components in VB.If you already understand C#, you may safely skip or skim Chapters 3 and 4. Chapter 5 contains important information about the interactions of C# and the .NET Framework. You may then proceed with a detailed study of the .NET Framework in Chapters 6 and beyond. For a thorough introduction to the C# language you may read the book Introduction to C# Using .NET. The book is practical, with many examples and a major case study. The goal is to equip you to begin building significant applications using the .NET Framework. The book is part of The Integrated .NET Series from Object Innovations and Prentice Hall PTR.OrganizationThe book is organized into five major parts, and is structured to make it easy for you to navigate to what you most need to know. The first part, consistingof Chapters 1 and 2, should be read by everyone. It answers the question "What is Microsoft .NET?" and outlines the programming model of the .NET Framework.The second part, consisting of Chapters 3P5, covers the C# programming language. If you are already familiar with C# you can skim these chapters, paying the most attention to Chapter 5, which covers topics such as interfaces, delegates, and events. This chapter also describes important interactions between C# and the .NET Framework. The case study, which is elaborated throughout the entire book, is introduced in Chapter 4.The third part, Chapters 6P9, covers important fundamental topics in the .NET Framework. Chapter 6 covers user interface programming using the Windows Forms classes. Chapter 7 discusses assemblies and deployment, which constitute a major advance in the simplicity and robustness of deploying Windows applications, ending the notorious "DLL hell." Chapter 8 delves into important .NET Framework classes, including the topics of metadata, serialization, threading, attributes, application domains, asynchronous programming, remoting, and memory management. Chapter 9 covers ADO.NET, which provides a consistent set of classes for accessing both relational and XML Data.The fourth part of the book provides an in-depth introduction to Web programming using ASP.NET and SOAP. Chapter 10 introduces the fundamentals of ASP.NET, including the use of Web Forms, which greatly simplifies the development of sophisticated Web sites. Chapter 11 covers SOAP and Web Services, which provide an easy-to-use and robust mechanism for heterogeneous systems to interoperate.The final part of the book covers additional important topics in the .NET Framework. Chapter 12 covers the topic of security in detail, including code access security, declarative security, and the securing of Web applications and services. Chapter 13 introduces the debug and trace classes provided by .NET. Chapter 14 covers interoperability of .NET with COM and with Win32 applications.Sample ProgramsThe only way to really learn a major framework is to read and write many, many programs, including some of reasonable size. This book provides many small programs that illustrate pertinent features of .NET in isolation, which makes them easy to understand. The programs are clearly labeled in the text, and they can all be found in the software distribution that accompanies this book. A major case study, the Acme Travel Agency, is progressively developed in Chapters 4 through 12. It illustrates many features of C# and .NET working in combination, as they would in a practical application. The sample programs are provided in a self-extracting file on the bookUs Web site. When expanded, a directory structure is created, whose default root is c:\OI\NetCs. The sample programs, which begin with the second chapter, are in directories Chap02, Chap03, and so on. All the samples for a given chapter are in individual folders within the chapter directories. The names of the folders are clearly identified in the text. Each chapter that contains a step of the case study has a folder called CaseStudy, containing that step. If necessary, there is a readme.txt file in each chapter directory to explain any instructions necessary for getting the examples to work.This book is part of The Integrated .NET Series. The sample programs for other books in the series are located in their own directories underneath \OI, so all the .NET examples from all books in the series will be located in a common area as you install them.These programs are furnished solely for instructional purposes and should not be embedded in any software product. The software (including instructions for use) is provided "as is" without warranty of any kind. CaveatThe book and the associated code were developed with Beta 2 of the .NET Framework. Microsoft has indicated that this version of .NET is close to what will be the final version. Nonetheless, changes will be made before .NET is released. The code in the examples has been verified to work only with Windows 2000. Database code has been verified with SQL Server 2000. Several examples in the database and security chapters have machine names embedded in connection strings or role names. When trying to run these examples, you will have to replace those names with the appropriate name for your machine. To make installation easy, the database examples run with user name "sa" and without a password. Needless to say, in a real system you should NEVER have any login id without a password or have a database application use sa to log into a database.Web SitesThe Web site for the book series is: www.objectinnovations.com/dotnet.htmA link is provided at that Web site for downloading the sample programs for this book.Additional information about .NET technology is available at: www.reliablesoftware.comThe book sample programs are available at this Web site as well.The Web site for the book will also have a list of .NET learning resources that will be kept up to date.