Table of Contents
List of Illustrations
- Chapter 1
- Chapter 5
- Chapter 6
- Chapter 8
- Chapter 9
- Chapter 13
- Chapter 14
- Chapter 16
- Chapter 17
- Chapter 18
- Chapter 19
- Chapter 20
- Chapter 22
- Chapter 23
- Chapter 24
- Chapter 25
- Chapter 26
- Chapter 27
- Chapter 28
- Chapter 29
- Chapter 30
- Chapter 31
Guide
Pages
PROFESSIONAL
C# and .NET
2021 Edition
Christian Nagel
Copyright 2022 by John Wiley & Sons, Inc. All rights reserved.
Published by John Wiley & Sons, Inc., Hoboken, New Jersey.
Published simultaneously in Canada.
ISBN: 978-1-119-79720-3
ISBN: 978-1-119-79722-7 (ebk)
ISBN: 978-1-119-79721-0 (ebk)
No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning, or otherwise, except as permitted under Section 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, Inc., 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 750-4470, or on the web at www.copyright.com. Requests to the Publisher for permission should be addressed to the Permissions Department, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030, (201) 748-6011, fax (201) 748-6008, or online at http://www.wiley.com/go/permission.
Limit of Liability/Disclaimer of Warranty: While the publisher and author have used their best efforts in preparing this book, they make no representations or warranties with respect to the accuracy or completeness of the contents of this book and specifically disclaim any implied warranties of merchantability or fitness for a particular purpose. No warranty may be created or extended by sales representatives or written sales materials. The advice and strategies contained herein may not be suitable for your situation. You should consult with a professional where appropriate. Neither the publisher nor author shall be liable for any loss of profit or any other commercial damages, including but not limited to special, incidental, consequential, or other damages.
For general information on our other products and services or for technical support, please contact our Customer Care Department within the United States at (800) 762-2974, outside the United States at (317) 572-3993 or fax (317) 572-4002.
Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic formats. For more information about Wiley products, visit our web site at www.wiley.com.
Library of Congress Control Number: 2021939983
Trademarks: WILEY, the Wiley logo, Wrox, the Wrox logo, and Programmer to Programmer, and related trade dress are trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates, in the United States and other countries, and may not be used without written permission. All other trademarks are the property of their respective owners. John Wiley & Sons, Inc. is not associated with any product or vendor mentioned in this book.
Cover image: Henrik5000/Getty Images
Cover design: Wiley
This book is dedicated to my familyAngela,
Stephanie, Matthias, and KatharinaI love you all!
ABOUT THE AUTHOR
CHRISTIAN NAGEL is a Microsoft MVP for Visual Studio and Development Technologies and has been Microsoft Regional Director for more than 15 years. Christian is the founder of CN innovation, where he offers coaching, training, code reviews, and assistance with architecting and developing solutions using Microsoft technologies. He draws on more than 25 years of software development experience.
Christian started his computing career with PDP 11 and VAX/VMS systems at Digital Equipment Corporation, covering a variety of languages and platforms. Since 2000, when .NET was just a technology preview, he has been working with various technologies to build .NET solutions. Currently, he mainly coaches people on developing and architecting solutions based on .NET and Microsoft Azure technologies, including Windows apps, ASP.NET Core, and .NET MAUI. A big part of his job is helping companies move their solutions to Microsoft Azure.
Even after many years in software development, Christian still loves learning and using new technologies and teaching others how to use them. Using his profound knowledge of Microsoft technologies, he has written numerous books and is certified as a Microsoft Certified Trainer, Azure Developer Associate, DevOps Engineer Expert, and Certified Solution Developer. Christian speaks at international conferences such as Microsoft Ignite (previously named TechEd), BASTA!, and TechDays. You can contact Christian via his website at www.cninnovation.com
, read his blog at csharp.christiannagel.com
, and follow his tweets at @christiannagel
.
ABOUT THE TECHNICAL EDITOR
ROD STEPHENS is a long-time developer and author who has written more than 250 magazine articles and 35 books that have been translated into languages around the world. During his career, Rod has worked on an eclectic assortment of applications in such fields as telephone switching, billing, repair dispatching, tax processing, wastewater treatment, concert ticket sales, cartography, and training for professional football teams.
Rod's popular C# Helper website (www.csharphelper.com
) receives millions of hits per year and contains tips, tricks, and example programs for C# programmers. His VB Helper website (www.vb-helper.com
) contains similar material for Visual Basic programmers.
You can contact Rod at .
ACKNOWLEDGMENTS
I WANT TO THANK Charlotte Kughen. For many years and many editions of this book, she has made my text so much more readable. Often, I completed chapters late in the evening, when I miss things as I turn sentences around. Charlotte was of enormous help in changing my ideas into great readable text. Charlotte, big thanks for your continued support with these editions; I'm looking forward to working together in the future as well.
Special thanks also go to Rod Stephens, the technical editor of this edition. Rod had great comments on my source code and induced some changes that helped with the quality of the source code. Rod is also the author of some great books, for example Essential Algorithms: A Practical Approach to Computer Algorithms Using Python and C# and WPF 3d: Three-Dimensional Graphics with WPF and C#. These books can be a great addition for your C# bookshelf.
My thanks also go to the complete team working on the book. In particular, I want to thank Istvn Novak, technical editor of several previous editions of this book. Now Istvn had the role as technical proofreader to solve some final issues. I also want to thank Kim Wimpsett, who fixed some more text issues during the production phase, and Barath Kumar Rajasekaran, who helped the flow during production.
Next page