翻譯|行業資訊|編輯:龔雪|2021-04-21 10:02:34.127|閱讀 266 次
概述:.NET 5現已推出四個月以上(.NET Core 3一年半),桌面應用開發人員還不會如何遷移現有的應用,這篇文章將告訴你答案!
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
Telerik DevCraft包含一個完整的產品棧來構建您下一個Web、移動和桌面應用程序。它使用HTML和每個.NET平臺的UI庫,加快開發速度。Telerik DevCraft提供最完整的工具箱,用于構建現代和面向未來的業務應用程序,目前提供UI for ASP.NET MVC、Kendo UI、UI for ASP.NET AJAX、UI for WPF、UI for Xamarin、Reporting等眾多控件。
您正在.NET Framework中構建桌面應用程序,并且想知道是否應該將它們移至.NET Core或.NET5。有一個問題是,在.NET Framework上構建的桌面應用程序具有用戶非常喜歡的整個“working”功能?是否需要采用新的桌面平臺?
在問了這個問題后,WPF和Windows Forms開發人員對.NET Core和.NET 5并不陌生,.NET Core完全支持WPF、Windows Forms(包括去年5月發布的Windows Forms Designer)。如果您在.NET 5中啟動下一個應用程序,速度也不會降低。
真正的問題是,在.NET Core / .NET 5的桌面開發中是否有任何要切換的內容。
首先,遷移到.NET Core可能會解決您可能遇到性能問題,得益于.NET基類庫的改進,您可以看到拖慢典型業務應用程序運行的內容:數據庫、網絡和file I/O activity。在.NET 5中,即使屏幕重繪也更快。除了在.NET Core或.NET 5中構建應用程序外,您無需執行任何其他操作。
如果要確保應用程序在計算機上存在正確版本的.NET Core,可以將應用程序和所需的.NET Core組件捆綁到單個exe文件中(僅將必需的.NET應用程序所需的核心組件捆綁到該文件中)。
如果要使用最新版本的C#、C# 8和9,則需要移至.NET Core / .NET5。C#8/9的新功能包括在定義接口時在方法中添加默認實現的功能,創建不可變的引用類型(記錄)和編寫更簡單的代碼(在新表達式中省略類型,使用 頂級表達式)。最新版本的C#還允許您創建與異步foreach循環一起使用的集合,并拋出更靈活的using語句,該語句使您可以異步處理對象(在設置using塊時,它還提供了更簡單的代碼 自動處置)。
WinUI提供了更好的開發人員體驗和一系列新控件, 其中許多都非常友好。 如果您要構建WPF應用程序,則可以始將這些新控件合并到現有應用程序中……
您還將在.NET 5的Windows Forms控件中獲得更多功能。 ListView有一個新的API,使您可以訪問有關創建組的一些顯著改進。 任務對話框得到了很大的增強; 文件對話框可以更好地管理其狀態(例如,記住用戶上次查看的文件夾)。 Windows Forms控件中的輔助功能支持也得到了改進。
如果要將現有應用程序移至.NET Core / .NET 5,則可能會遇到遷移問題,兩個大變化是項目文件的新結構和新的API。
.NET Core / .NET 5中的項目文件也有所不同,您的NuGet程序包引用已從packages.config文件移到您的項目文件中。盡管可以繼續在.NET Core / .NET 5桌面應用程序中至少使用某些.NET Framework API,但您應該使用.NET Core / .NET Standard / .NET Standard目標API,當前正在與之交互的某些API肯定可能不再存在,需要查找替代。
有些工具將為您處理轉換或確定現有的問題,例如可以右鍵單擊packages.config文件,然后選擇菜單選項來將NuGet設置移動到配置文件中。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都網