ویژگیهای جدید C# 9.0، به همراه NET 5. ارائه میشوند. بنابراین جهت راه اندازی پروژهای که قرار است بر این مبنا تهیه شود، نیاز است مراحل زیر را طی کنید:
- آخرین نگارش NET 5 SDK. را
از اینجا دریافت و نصب کنید (حتما SDK باشد و نه runtime).
- اگر میخواهید با ویژوال استودیو کار کنید، نیاز است حداقل نگارش 16.7 یا بالاتر را نصب کرده باشید. به همین جهت پیش از ادامهی بحث، از منوی Help، گزینهی Check For Updates را انتخاب کرده و حتما آخرین به روز رسانیهای موجود را نصب کنید. بنابراین برای کار با C# 9.0 توسط VS، حتما باید آخرین نگارش 2019 آن، به همراه تمام به روز رسانیهای ممکن بر روی سیستم شما نصب باشند؛ در غیراینصورت امکان کار با آنرا حداقل توسط VS نخواهید داشت.
- در زمان نگارش این مطلب چون هنوز نگارش نهایی NET 5 SDK. ارائه نشدهاست، نیاز است به منوی Tools در ویژوال استودیو مراجعه کرده و با انتخاب «Preview Features» آن، گزینهی «Use previews of the .NET Core SDK» را فعال کنید. پس از آن، یکبار هم نیاز است VS را بسته و راه اندازی مجدد نمائید.
پس از نصب پیشنیازهای لازم، اکنون فایل csproj را به صورت زیر ویرایش کنید:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net5.0</TargetFramework>
<LangVersion>9.0</LangVersion>
</PropertyGroup>
</Project>
در اینجا TargetFramework حتما باید net5.0 باشد و اگر هنوز نگارش نهایی SDK آن در دسترس نیست، تنظیم گزینهی LangVersion هم ضروری است. پس از ارائهی نگارش نهایی SDK، میتوان ویژگی LangVersion را حذف کرد؛ چون به صورت خودکار به آخرین نگارش موجود تنظیم میشود.
تنظیمات مورد نیاز C# 9.0 در پروژههای کتابخانهای
در این نوع پروژهها، علاوه بر نصب پیشنیازهای یاد شده، نیاز است TargetFramework را به حداقل netstandard2.1 تنظیم کرد (و یا حتی net5.0 هم در اینجا کار میکند):
<TargetFramework>netstandard2.1</TargetFramework>
<LangVersion>9</LangVersion>
تنظیمات مورد نیاز C# 9.0 در VSCode برای کار با VSCode، تنها کافی است آخرین نگارش SDK و آخرین نگارش افزونهی #C آنرا نصب کنید و TargetFramework و LangVersion را همانطور که عنوان شد، تنظیم نمائید. این روش سادهترین و کم حجمترین روش کار با C# 9.0 است.
تنظیمات مورد نیاز C# 9.0 در Rider
اگر میخواهید برای کار با C# 9.0 از محصولات Jetbrains استفاده کنید، نیاز است حداقل نگارش 2020.3 آنها را نصب کنید که در این زمان هنوز در مرحلهی پیشنمایش (ReSharper 2020.3 EAP or Rider 2020.3 EAP) به سر میبرند.
من از چه روشی استفاده میکنم؟!
VS کامل بر روی سیستم من نصب نیست؛ هیچ نگارشی از آن! عمدهی کارهای من توسط VS Code و افزونهی #C آن انجام میشوند و هر از چندگاهی، یکبار هم توسط Rider چون به همراه ReSharper توکار است، کنترل کیفیت میشوند (در حد بررسی گزارشهای ReSharper آن). البته افزونهی
Roslynator برای VS Code هم موجود است و بسیاری از قابلیتهای ReSharper را در VSCode نیز مهیا میکند.