Synopses & Reviews
Professional C# 2005
C# and .NET are set to revolutionize the way that you write programs. Updated for .NET Framework 2.0 and Visual Studio® 2005, this bestselling book will give you the tools to program in C#, while also providing you with the necessary background in how the .NET architecture works.
You'll first explore the fundamentals of C#, including its basic syntax, data types, and object-oriented features. You'll then discover how to apply the language to a number of innovative applications that use related technologies, including database access and advanced graphics. This approach will help you gain a well-rounded understanding of C# so that you can begin programming like an expert right away.
This book covers everything you need to know in order to write dynamic Web pages, an XML Web service, a component of a distributed application, a classic Windows® desktop application, and much more.
What you will learn from this book
- The principles of programming in the .NET environment
- Ways to create Windows applications and Windows services
- How to use existing COM components with .NET applications
- Steps for writing dynamic Web pages and Web services with ASP.NET
- Techniques for manipulating XML using C# 2005
- How to access databases with ADO.NET and interact with directories
- Tips for writing cutting-edge components that will run on Web sites
Who this book is for
This book is for the experienced developer, although no previous knowledge of C# or .NET programming is assumed. It is also for programmers who know .NET 1.0 and are interested in getting up to speed with .NET 2.0 and Visual Studio 2005.
Wrox Professional guides are planned and written by working programmers to meet the real-world needs of programmers, developers, and IT professionals. Focused and relevant, they address the issues technology professionals face every day. They provide examples, practical solutions, and expert education in new technologies, all designed to help programmers do a better job.
Professional C# 2005
prepares you to program in C#, and it provides the necessary background information on how the .NET architecture works. It provides examples of applications that use a variety of related technologies, including database access, dynamic web pages, advanced graphics, and directory access. The only requirement is that you are familiar with at least one other high-level language used on Windows—either C++, VB, or J++.
It starts with a tutorial on C# and the .NET framework. This introduction assumes no prior knowledge of .NET, but it does move rapidly, on the assumption that the reader is an experienced programmer. Once this background knowledge is established, the book starts to sweep through the vast .NET class library, showing how you can use C# to solve various tasks. This comprehensive coverage is one of the key selling points of previous versions of the book, and is maintained and enhanced with this new edition by adding new chapters on Generics, ObjectSpaces, Yukon, and Indigo. Some reference material is included either as appendices or is available to download from the Wrox website.
After the introduction and initial chapter, the book is divided into a number of sections that cover both the C# language and its application in a variety of areas. Coverage includes:
- Writing Windows applications and Windows services
- Writing web pages and web services with ASP.NET
- Manipulating XML using C# 2005
- Understanding .NET Assemblies
- Using ADO.NET to access databases
- Integration with COM, COM+, and Active Directory
- Distributed applications with .NET Remoting
- Generating graphics using C# 2005
- Accessing files and the Registry, and controlling .NET security
About the Author
is software architect and developer, associate of Thinktecture, who offers training and consulting on how to design and develop Microsoft .NET solutions. He looks back to more than 15 years’ experience as a developer and software architect. Christian started his computing career with PDP 11 and VAX/VMS platforms, covering a variety of languages and platforms. Since the year 2000 — when .NET was just a technology preview — he has been working with various .NET technologies to build distributed solutions. With his profound knowledge of Microsoft technologies, he has also written numerous .NET books; is certified as Microsoft Certified Trainer (MCT), Solution Developer (MCSD), and Systems Engineer (MCSE); and is Microsoft Regional Director and MVP for Visual C#. Christian is a speaker at international conferences (TechED, DevDays, VCDC) and is the regional manager of INETAEurope (International .NET User Group Association) supporting .NET user groups. You can contact Christian via his Web site, http://www.christiannagel.com and http://www.thinktecture.com.
Bill Evjen is an active proponent of the .NET technologies and community-based learning initiatives for .NET. He has been actively involved with .NET since the first bits were released in 2000 and has since become president of the St. Louis .NET User Group (http://www.stlusergroups.org). Bill is also the founder and executive director of the International .NET Association (http://www.ineta.org), which represents more than 125,000 members worldwide. Based in St. Louis, Missouri, USA, Bill is an acclaimed author and speaker on ASP.NET and XMLWeb services. He has written XMLWeb Services for ASP.NET, Web Services Enhancements: Understanding the WSE for Enterprise Applications, Visual Basic .NET Bible, and ASP.NET Professional Secrets (all published by Wiley). Bill is a Technical Director for Reuters, the international news and financial services company. He graduated from Western Washington University in Bellingham, Washington, with a Russian language degree. You can reach Bill at firstname.lastname@example.org.
Jay Glynn started writing software nearly 20 years ago, writing applications for the PICK operating system using PICK basic. Since then, he has created software using Paradox PAL and Object PAL, Delphi, VBA, Visual Basic, C, C++, Java, and of course C#. He is currently a Project Coordinator and Architect for a large financial services company in Nashville, Tennessee, working on software for the TabletPC platform. He can be contacted at email@example.com.
Karli Watson is a freelance author and the technical director of 3form Ltd (http://www.3form.net). Despite starting out by studying nanoscale physics, the lure of cold, hard cash proved too much and dragged Karli into the world of computing. He has since written numerous books on .NET and related technologies, SQL, mobile computing, and a novel that has yet to see the light of day (but that doesn’t have any computers in it). Karli is also known for his multicolored clothing, is a snowboarding enthusiast, and still wishes he had a cat.
Morgan Skinner began his computing career at a tender age on a Sinclair ZX80 at school, where he was underwhelmed by some code a teacher had written and so began programming in assembly language. After getting hooked on Z80 (which he believes is far better than those paltry 3 registers on the 6502), he graduated through the school’s ZX81s to his own ZX Spectrum.
Since then he’s used all sorts of languages and platforms, including VAX Macro Assembler, Pascal, Modula2, Smalltalk, X86 assembly language, PowerBuilder, C/C++, VB, and currently C#. He’s been programming in .NET since the PDC release in 2000, and liked it so much he joined Microsoft in 2001. He now works in Premier Support for Developers and spends most of his time assisting customers with C#.
You can reach Morgan at http://www.morganskinner.com.
Allen Jones has a career spanning 15 years that covers a broad range of IT disciplines, including enterprise management, solution and enterprise architecture, and project management. But software development has always been Allen’s passion. Allen has architected and developed Microsoft Windows-based solutions since 1990, including a variety of e-commerce, trading, and security systems.
Allen has co-authored four popular .NET books including the C# Programmer’s Cookbook (Microsoft Press) and Programming .NET Security (O’Reilly), and he is actively involved in the development of courseware for Microsoft Learning covering emerging .NET technologies.
Table of Contents
Part I: The C# Language.
Chapter 1: .NET Architecture.
Chapter 2: C# Basics.
Chapter 3: Objects and Types.
Chapter 4: Inheritance.
Chapter 5: Operators and Casts.
Chapter 6: Delegates and Events.
Chapter 7: Memory Management and Pointers.
Chapter 8: Strings and Regular Expressions.
Chapter 9: Collections.
Chapter 10: Generics.
Chapter 11: Reflection.
Chapter 12: Errors and Exceptions.
Chapter 13: Threading.
Part II: The .NET Environment.
Chapter 14: Visual Studio 2005.
Chapter 15: Assemblies.
Chapter 16: .NET Security.
Chapter 17: Localization.
Chapter 18: Deployment.
Part III: Data.
Chapter 19: Data Access with .NET.
Chapter 20: .NET Programming with SQL Server 2005.
Chapter 21: Manipulating XML.
Chapter 22: Working with Active Directory.
Part IV: Windows Applications.
Chapter 23: Windows Forms.
Chapter 24: Viewing .NET Data.
Chapter 25: Graphics with GDI+.
Part V: Web Applications.
Chapter 26: ASP.NET Pages.
Chapter 27: ASP.NET Development.
Part VI: Communication.
Chapter 28: Web Services.
Chapter 29: .NET Remoting.
Chapter 30: Enterprise Services.
Chapter 31: Message Queuing.
Chapter 32: Future of Distributed Programming.
Part VII: Interop.
Chapter 33: COM Interoperability.
Part VIII: Windows Base Services.
Chapter 34: Manipulating Files and the Registry.
Chapter 35: Accessing the Internet.
Chapter 36: Windows Services.
Part IX: Appendices (Web Site Only).
Appendix A: Principles of Object-Oriented Programming.
Appendix B: C# for Visual Basic 6 Developers.
Appendix C: C# for Java Developers.
Appendix D: C# for C++ Developers.