مایکروسافت .NET 11 Preview 7 منتشر شد و مجموعه‌ای از قابلیت‌های جدید را برای .NET MAUI اضافه کرد: احراز هویت مبتنی بر Passkeys، پیاده‌سازی افزایشی XAML Hot Reload، قالب‌های مسیر برای Shell و بهبودهای مرتبط با AOT و مهاجرت از renderer به handler.

Passkeys در MAUI Essentials — احراز هویت بومی و کراس‌پلتفرم

Preview 7 یک API جدید برای Passkeys در MAUI Essentials عرضه می‌کند که تجربهٔ بومی passkey را روی اندروید 14 به بعد، iOS/Mac Catalyst 16 به بعد و نسخه‌های پشتیبانی‌شدهٔ ویندوز فراهم می‌سازد. توسعه‌دهندگان می‌توانند از متدهای Passkeys.CreateAsync برای ثبت credential و Passkeys.AssertAsync برای احراز هویت استفاده کنند؛ متد Passkeys.IsSupported نیز سازگاری پلتفرم را بررسی می‌کند.

پشتیبانی پلتفرم‌ها

  • اندروید 14 و بالاتر
  • iOS و Mac Catalyst 16 و بالاتر
  • نسخه‌های پشتیبانی‌شدهٔ ویندوز

نکات پیاده‌سازی و مسئولیت‌های سمت سرور

API مدیریت فراخوانی‌های WebAuthn را در سمت پلتفرم انجام می‌دهد. مسئولیت‌های سمت سرور از جمله تولید چالش‌ها، ارائهٔ گزینه‌های WebAuthn و اعتبارسنجی assertions/attestations بر عهدهٔ برنامه و سرور است. همچنین برای عملکرد صحیح Passkeys باید تنظیمات اعتماد پلتفرم نظیر Associated Domains و فایل Apple App Site Association در iOS/Mac یا Digital Asset Links در اندروید اعمال شوند. برای اطلاعات فنی بیشتر می‌توانید به مستند WebAuthn مراجعه کنید: WebAuthn.

XAML Incremental Hot Reload

Preview 7 قابلیت XAML Incremental Hot Reload را به‌عنوان ویژگی پیش‌نمایش فعال کرده و به‌صورت پیش‌فرض در بیلدهای Debug روشن است. به‌جای بازسازی کامل XAML، این مکانیزم با ترکیب یک source generator و MetadataUpdateHandler صفحات را بدون حذف وضعیت فعلی به‌روزرسانی می‌کند؛ همین فرایند با dotnet watch نیز کار می‌کند.

قابلیت‌ها

  • تغییر ویژگی‌ها و افزودن یا حذف المان‌ها
  • جابجایی ساختار درختی و به‌روزرسانی ResourceDictionary
  • پشتیبانی از markup extensions و انواع binding

در صورت نیاز می‌توان این رفتار افزایشی را با فلگ EnableMauiIncrementalHotReload غیرفعال و به مکانیزم Hot Reload قبلی بازگشت.

قالب‌های مسیر در Shell

Shell اکنون از قالب‌های مسیر مشابه مسیردهی در ASP.NET Core و Blazor پشتیبانی می‌کند. قالب‌ها می‌توانند شامل بخش‌های اجباری، اختیاری، دارای مقدار پیش‌فرض، محدودشده و catch-all باشند. مثال ساده: product/{sku}. مقادیر پارامترها از طریق سازوکارهایی مانند QueryProperty و IQueryAttributable منتقل می‌شوند. فعلاً این قالب‌ها فقط برای مسیردهی مطلق پشتیبانی شده و مسیردهی نسبی را شامل نمی‌شوند.

بهبودهای AOT و XAML source generator

ژنراتور XAML در Preview 7 کارایی مرتبط با AOT را گسترش داده است. در مواردی که MAUI بتواند نوع ancestor را در زمان کامپایل تعیین کند، بایندینگ‌هایی مانند {RelativeSource AncestorType=...} به TypedBinding ایمن در برابر trimming تبدیل می‌شوند. این رویکرد از وابستگی به مسیرهای رشته‌ای مبتنی بر reflection جلوگیری می‌کند که ممکن است در فرایند trimming اعضا را حذف کند. برخی حالت‌ها مانند Self و TemplatedParent همچنان از مسیر زمان اجرا استفاده خواهند کرد.

نقاط توسعه برای بک‌اندهای ثالث و شناسایی پلتفرم‌های بیشتر

Preview 7 چند نقطهٔ توسعه‌ای جدید معرفی کرده تا بک‌اندهای پلتفرم ثالث بتوانند قابلیت‌ها را به‌صورت بسته‌های NuGet پیاده‌سازی کنند. OnPlatform اکنون GTK، macOS و WPF را می‌شناسد و زیرساخت‌هایی مثل alert، gesture، Resizetizer، SingleProject و BlazorWebView قراردادهایی را افشا می‌کنند تا نیاز به نگهداری پَچ‌های محلی روی MAUI کاهش یابد.

مهاجرت renderer به handler در اکوسیستم اپل

فرایند مهاجرت از renderer به handler در پلتفرم‌های اپل ادامه دارد: NavigationPage و TabbedPage به‌صورت پیش‌فرض روی iOS و Mac Catalyst با handler کار می‌کنند و پیاده‌سازی‌های رندرر قدیمی جایگزین شده‌اند. رندررهای سازگاری همچنان به‌عنوان fallback در دسترس‌اند، بنابراین در صورت استفاده از renderer سفارشی یا تغییرات سطح صفحه گسترده باید پیش از پذیرش عمومی Preview 7 تست کامل انجام شود.

به‌روزرسانی‌های خاص پلتفرم و ابزار توسعه

  • ویندوز: پشتیبانی از Window.StatusBarTheme و فعال‌سازی تک‌نمونه‌ای (single-instance activation).
  • ذخیرهٔ رسانه: امکان ذخیرهٔ فایل‌های ضبط‌شده مستقیماً در گالری سیستم.
  • اندروید: قرار گرفتن راهبرد FastDeploy2 به‌صورت پیش‌فرض برای تسریع چرخهٔ توسعه.
  • iOS/tvOS: dotnet watch اکنون می‌تواند Hot Reload را روی دستگاه‌های فیزیکی از طریق USB یا Wi‑Fi انجام دهد.
نمایش ویژگی‌های جدید MAUI در .NET 11 Preview 7

دلایل امتحان کردن Preview 7

  • Passkeys پیاده‌سازی احراز هویت کراس‌پلتفرم و ایمن را ساده‌تر می‌کند.
  • XAML Incremental Hot Reload بازخورد سریع‌تری هنگام توسعه رابط کاربری فراهم می‌کند و زمان توسعه را کاهش می‌دهد.
  • قالب‌های مسیر در Shell مسیردهی پارامتریک را قابل‌استفاده‌تر می‌سازند.
  • بهبودهای AOT و نقاط توسعهٔ جدید، قابلیت‌های تولیدی و نگهداری را ارتقا می‌دهند.

دریافت و منابع

Preview 7 در تاریخ 11 اوت 2026 منتشر شد. نصب SDK از طریق صفحهٔ رسمی دانلود امکان‌پذیر است: دانلود .NET 11 Preview SDK. برای جزئیات کامل ویژگی‌ها و نکات مهاجرت، مستندات MAUI و اعلامیه‌های مایکروسافت مرجع مناسب هستند.

قبل از ارتقا در پروژه‌های بزرگ یا تولیدی، پیشنهاد می‌شود تغییرات مرتبط با مهاجرت renderer/handler و پیاده‌سازی Passkeys را در شاخه‌های آزمایشی بررسی و با تست کامل ارزیابی کنید.