مایکروسافت در گامی دیگر به سمت انتشار نهایی .NET 11، نسخهٔ پیشنمایش 6 را در دسترس توسعهدهندگان قرار داد. این بهروزرسانی که تمرکز اصلی آن بر بهبود عملکرد، امنیت و پایداری فریمورک است، تغییرات ساختاری را در هستهٔ زبان C#، زیرساخت ASP.NET Core، کتابخانههای توسعهٔ چندسکویی و موتور دادهای Entity Framework به همراه دارد.
ویژگیهای جدید در زبان C#
یکی از نقاط قوت این نسخه، تکمیل کار روی اعضای افزونه است. توسعهدهندگان اکنون میتوانند از طریق بلوکهای افزونه، به شکل this [...] به انواع موجود دسترسی مستقیم برقرار کنند و بخشهای مفقودهای که در پیشنمایشهای قبلی فقط شامل متد و پراپرتی بود، پوشش داده شوند. این قابلیت در کنار پیشرفتهای مربوط به انواع اجتماع که از پیشنمایش 5 آغاز شده بود، کدنویسی مدرنتر و ایمنتری را در زبان C# رقم میزند. کامپایلر اکنون انواع پشتیبانیشدهٔ Union را بهصورت پیشفرض درون فریمورک عرضه میکند و پکیج System.Text.Json نیز بدون نیاز به کدهای تکراری، این ساختارها را بهخوبی سریالسازی میکند. هر دو قابلیت همچنان در حالت پیشنمایش فعال هستند و نیازمند فعالسازی نسخهٔ آزمایشی زبان میباشند.
امنیت و عملکرد در ASP.NET Core و Blazor
زیرساخت وب مایکروسافت نیز از این قاعده مستثنی نبوده و مجموعهای گسترده از بهبودها را دریافت کرده است. اعتبارسنجی درخواستها در Minimal API اکنون از اعتبارسنجهای ناهمگام بهصورت یکپارچه پشتیبانی میکند. مایکروسافت همچنین یک لایهٔ امنیتی هوشمند را به هستهٔ وباپلیکیشنها افزوده است که با مشاهدهٔ هدرهای Sec-Fetch-Site و Origin مرورگر، درخواستهای میانمبدأی ناامن را بهطور خودکار مسدود میکند. این محافظت بدون نیاز به هرگونه پیکربندی در Minimal API، MVC، Razor Pages و Blazor فعال است و بهطور خاص پروژههای Blazor Web App دیگر نیازی به فراخوانیٔ دستی app.UseAntiforgery() ندارند.
در حوزهٔ رابط کاربری و فریمورک بلزور، کامپوننت Virtualize اکنون امکان اسکرول پیشرفته به هر آیتم دلخواه و باز شدن از نقطهٔ مشخصشده را فراهم میکند. رفتار راهاندازی کلاینت نیز بهطور کامل از جاوااسکریپت به C# منتقل شده و تنظیمات آن از سمت سرور مدیریت میشود. Blazor Gateway که میزبان توسعهٔ برنامههای WebAssembly مستقل است، اکنون از طریق یک پراکسی معکوس داخلی YARP میتواند ترافیک را به سرویسهای بکاند پرتاب کند که کاملاً نیاز به پیکربندی CORS را از بین میبرد.
اسناد OpenAPI تولیدی اکنون نسخهٔ 3.2 را بهعنوان استاندارد پیشفرض هدف قرار میدهند. ویژگی جدید [ShortCircuit] به مسیرها اجازه میدهد بلافاصله پس از تکمیل مرحلهٔ مسیریابی اجرا شوند تا بار پردازشی کاهش یابد. مثال کاربرد آن به این صورت است:
[ApiController]
[Route("robots.txt")]
[ShortCircuit]
public class RobotsController : ControllerBase
{
[HttpGet]
public IActionResult Get() => Content("User-agent: *\nDisallow:", "text/plain");
}
قابلیتهای SignalR نیز بسیار تقویت شدهاند؛ اتصالها بدون نیاز به قطع و وصل مجدد میتوانند احراز هویت خود را تازه کنند و کلاینتها قادر به لغو فراخوانیهای غیرجریانی هستند.
پیشرفتهای فریمورک MAUI و توسعهٔ چندسکویی
در بخش توسعهٔ چندسکویی، نسل جدید CollectionView در ویندوز با استفاده از هندلرهای WinUI ItemsRepeater اجرا میشود. همچنین Shell در اندروید با بازطراحی از پلتفرم استاندارد MAUI پیادهسازی شده و از کلاسهای قدیمیِ رندرکننده فاصله گرفته است. یک تغییر ناسازگار مهم در این نسخه، برداشتهشدن بستهٔ Microsoft.Maui.Controls.Compatibility است. مایکروسافت این بسته را کاملاً از چرخهٔ ساخت خارج کرده و توسعهدهندگان باید پروژههای خود را به سمت استفادهٔ مستقیم از کنترلهای MAUI مهاجرت دهند. تعامل بینبرنامهای HybridWebView نیز با بهرهگیری از Source Generator کاملاً برای حالتهای Trimming و NativeAOT ایمنسازی شده است. برای توسعه روی پلتفرمهای اپل نیز Xcode 26.6 بهعنوان نسخهٔ پایدار و پشتیبانیشده معرفی شده است.
بهینهسازی پایگاه داده در Entity Framework Core
EF Core حالا قابلیت ترجمهٔ عملگر FullJoin به دستورات SQL FULL OUTER JOIN را دارد. این بهروزرسانی بهعلاوهٔ امکان ساخت کلید و ایندکس روی ویژگیهای نوعِ پیچیده، چابکیِ کدنویسیِ دادهها را بهشدت افزایش میدهد. مایکروسافت یک API جدید به نام IsConstrained را نیز برای روابطی که در سطح دیتابیس محدودیت ندارند، معرفی کرده است. ارائهدهندهٔ سرویس Cosmos DB گزینههای بهتری برای مدیریت ایندکسها دریافت کرده و پکیج Microsoft.Data.Sqlite اکنون بهطور پیشفرض از موتور رمزنگاری SQLite3 Multiple Ciphers استفاده میکند که امنیت دادههای روی دیسک را تضمین میکند.
بهبودهای رانتایم، JIT و NativeAOT
مایکروسافت در این نسخه دست از بهبودهای زیرساختی برنداشته است. آداپتورهای Stream برای حافظه و متن، قواعد ردیابی فعالیتها و عملیات برداری بینرشتهای از جملهٔ تغییراتی هستند که سرعت اجرای کدهای موازی را افزایش میدهند. بهینهسازیهای گسترده در بخش runtime-async، بهبودِ کامپایلر JIT، ثبتِ گزارش خرابیها بهصورت درونفرایندی و شتاب چشمگیر در Dispatch رابطها در NativeAOT، همگی نشان میدهند که مایکروسافت تا چه اندازه به سمت ارائهٔ یک فریمورک سبک، سریع و قابلاعتماد حرکت میکند.
برای بررسی کدهای منبع، تغییرات جزئی و گزارش کامل این نسخه میتوانید به مخزن رسمی «dotnet/core» در GitHub مراجعه کنید. نسخههای نهایی داتنت 11 با این روند بهبود مییابند و احتمالاً استانداردهای جدیدی را در سالِ آینده برای جامعهٔ برنامهنویسان تعریف میکنند. سازگاری با معماریهای جدید، کاهشِ مصرفِ حافظه و تسهیلِ ادغام با سرویسهای ابری، مسیر را برای پروژههای بزرگِ سازمانی هموارتر کرده است.





