From: 011netservice@gmail.com Date: 2022-04-24 Subject: .NET Core 摘要 .NET Core是.NET Framework的新一代版本,是微軟開發的第一個跨平台 (Windows、Mac OSX、Linux)的應用程式開發框架(Application Framework). .Net Core也是微軟在一開始發展時就開源的軟體平台. 由於 .NET Core 的開發目標是跨平台的 .NET 平台,因此 .NET Core 會包含 .NET Framework 的類別庫, 但與 .NET Framework 不同的是 .NET Core 採用套件化 (Packages) 的管理方式, 應用程式只需要取得需要的組件即可,與 .NET Framework 大包式安裝的作法截然不同,同時各套件亦有獨立的版本線 (Version line), 不再硬性要求應用程式跟隨主線版本。 應用程式特性: .NET Core 基於跨平台能力,並沒有將與 GUI 高度相關的 API 移植到 .NET Core 內, 因此像是 Windows Forms 或是 Windows Presentation Foundation (WPF) 並未移植到 .NET Core. .NET Core 支援主控台應用程式 (Console Application) 以及類別庫 (Class Library) 類型的專案。 微軟在其 Universal Windows Platform (UWP) 開發平台使用了 .NET Core,並且利用 .NET Native 技術將其效能提升至十分接近原生碼的速度。 ASP.NET Core 則以主控台應用程式驅動其代管環境 Kestrel Server 以支援 ASP.NET Core 程式的執行。 .NET Core 2016 Release 於 https://github.com/dotnet/core 20210421最新版為 5.0 .NET sdk: https://dotnet.microsoft.com/download#/sdk .NET Core 兩種發行方式: Framework Dependent Deployment (FDD) 有.EXE檔案, 檔案小, 不需要指定OS, 無法控制執行到哪個版本的 runtime. Produce a cross-platform binary 執行方式: dotnet ConsoleAppNetCore.dll Self-contained Deployment (SCD) 能控制執行的 runtime 版本, 系統不需要先安裝 .NET Core, 檔案較大, 需要指定OS. Produce an executable Overview 比較優缺點: https://docs.microsoft.com/zh-tw/dotnet/core/deploying/ Q: 如何執行 .NET Core 的程式? 1. dotnet new console: 建立 .NET Core app 並編譯. 2. dotnet run: 執行工作目錄中的專案檔案.csproj. A: 3. dotnet : 執行編譯後的 NET Core assemblie. (例如 dotnet temp.dll). 請參考 "在 Windows 環境中建立 .NET Core app 後執行.txt" 檔案說明.