فهرست مندرجات 3
مقدمه مترجم 10
مقدمه مؤلف 12
چه موضوعاتی در این کتاب پوشش داده میشوند 13
آنچه برای یادگیری این کتاب به آن نیاز دارید 16
فصل 1 17
به C# و .NET خوش آمدید! 17
برپا کردن محیط برنامهنویسی 18
.NET 24
ساختن برنامههای کنسولی با استفاده از VSC 38
دانلود پاسخ سوالات از مخزن GitHub 43
جستجو برای کمک 44
تمرینها و کاوشهای بیشتر 50
خلاصه 52
فصل 2 54
صحبت به زبان C# 54
مقدمهای بر C# 54
اصول زبان C# 61
کار با متغیرها 72
مقادیر null 93
تبدیل یک گونه مقداری نولپذیر 94
مطالب بیشتر درباره برنامههای کنسولی 100
تمرینها و کاوشهای بیشتر 113
خلاصه 115
فصل 3 116
کنترل روند برنامه و تبدیل گونهها 116
انجام عملیات بر روی متغیرها 116
عبارات انتخاب کننده 127
عبارات تکرار 136
قالبگیری و تبدیل گونهها به یکدیگر 141
تمرینها و کاوشهای بیشتر 161
خلاصه 165
فصل 4 166
نوشتن، رفعاشکال، و آزمایش توابع 166
نوشتن توابع 166
اشکالزدایی در طول برنامهنویسی 183
واقعهنگاری در طول برنامه نویسی و در زمان اجرای برنامه 191
توابع آزمایش واحد 199
تمرینها و کاوشهای بیشتر 204
خلاصه 206
فصل 5 207
ساخت گونههای خودتان توسط برنامهنویسی-شیءگرا 207
برنامه نویسی شیء-گرا 208
ساختن کتابخانههای کلاس 210
ذخیره دادهها در فیلدها 218
نوشتن و فراخوانی متدها 234
کنترل دسترسی توسط ویژگیها و ایندکسسازها 247
تطبیق الگو توسط اشیاء 253
کار با رکوردها 257
تمرینها و کاوشهای بیشتر 261
خلاصه 263
فصل 6 264
پیادهسازی رابطها (اینترفیسها) و وراثت 264
تشکیل یک کتابخانه کلاس و برنامه کنسولی 265
ساده کردن متدها 267
تولید رویدادها و رسیدگی به آنها 272
پیادهسازی رابطها (اینترفیسها) 279
قابلیت استفاده مجدد از گونهها بصورت امن، توسط گونههای عام 287
مدیریت حافظه با گونههای مقداری و ارجاعی 292
ارث بری از کلاسها 300
قالببندی و تبدیل گونهها در درون سلسله مراتب وراثت 307
ارث بری از گونههای .NET و گسترش آنها 310
تمرینها و کاوشهای بیشتر 315
خلاصه 318
فصل 7 319
بستهها و گونههای .NET 319
مقدمهای بر .NET 5 320
اجزاء .NET 325
انتشار برنامهها برای استقرار بر روی کامپیوتر کاربران 338
از کامپایل در آوردن مجتمعها 345
پکیجبندی کتابخانهها برای توزیع نوگت 350
انتقال برنامههای موروثی .NET Framework به .NET 5 358
تمرینها و کاوشهای بیشتر 363
خلاصه 365
فصل 8 366
گونههای متداول در .NET 366
کار با اعداد 366
تطبیق الگوها با استفاده از عبارات باقاعده 376
ذخیره چند شیء در گردایهها 383
محدودهها، ایندکسها، و بردها 395
کار با منابع شبکه 398
کار با گونهها و صفتها 402
کار با تصاویر 410
بینالمللی کردن برنامهها 413
تمرینها و کاوشهای بیشتر 417
خلاصه 419
فصل 9 421
فایلها، جریانها و سریالسازی 421
سیستمفایلی 421
خواندن و نوشتن توسط جریانها 433
فشردهسازی جریانها 444
کدگذاری و از کد درآوردن متنها 449
سریالسازی اشیاء 454
تمرینها و کاوشهای بیشتر 463
خلاصه 466
فصل 10 467
محافظت از دادهها و برنامهها 467
فرهنگِ اصطلاحاتِ حفاظت از دادهها 468
به رمز درآوردن و از رمز درآوردن دادهها 472
درهمسازی دادهها 479
امضاء کردن دادهها 484
تولید اعداد تصادفی 489
ویژگیها جدید مربوط به رمزنگاری در .NET 492
اعتبارسنجی و مجوز سنجی کاربران 493
حفاظت از عملکردهای برنامه 500
تمرینها و کاوشهای بیشتر 501
خلاصه 503
فصل 11 504
کار با پایگاههایداده توسط Entity Framework Core 504
پایگاههای داده نوین 504
تنظیم EF Core 512
تعریف مدلهای EF Core 515
پرس و جو از مدلهای EF Core 530
بارگذاری الگوها با EF Core 547
تغییر دادهها با EF Core 553
تمرینها و کاوشهای بیشتر 560
خلاصه 562
فصل 12 563
پرسوجو و تغییر دادهها با استفاده از LINQ 563
نوشتن پرسوجوهای LINQ 564
کار با مجموعهها و کیسهها با استفاده از LINQ 575
استفاده از LINQ با EF Core 578
شیرین کردن نحوِ LINQ با شِکَر نحوی 591
استفاده از چند ریسه توسط LIKQ موازی 593
ایجاد متدهای گسترشِ LINQ توسط شما 597
کار با LINQ to XML 601
تمرینها و کاوشهای بیشتر 603
خلاصه 605
فصل 13 607
بهبود سرعت و مقیاسپذیری برنامهها توسط چندکارگی 607
پروسهها، ریسهها، و کارها 607
نظارت بر روی سرعت برنامه و مصرفِ منابع 609
اجراء کارها بصورت غیرهمگام 617
همگامسازی دسترسی به منابع مشترک 628
async و await 637
تمرینها و کاوشهای بیشتر 642
خلاصه 644
فصل 14 645
معرفی برنامههای عملی C# و .NET 645
مدلهای برنامه برای C# و .NET 646
ویژگیهای جدید ASP.NET Core 650
سیگنالار (SignalR) 655
بلیزور (Blazor) 658
ساختن یک مدل موجودیت داده برای Northwind 663
خلاصه 672
فصل 15 674
ساخت وبسایتها با استفاده از صفحات ASP.NET Core Razor 674
برنامهنویسی وب 674
صفحات Razor 694
استفاده از Entity Framework Core در ASP.NET Core 703
استفاده از کتابخانههای کلاس Razor 708
پیکربندی سرویسها و خطوط لوله درخواستهای HTTP 715
تمرینها و کاوشهای بیشتر 727
خلاصه 729