跳到主要內容

久違的 dotnet core 開發,安裝 dotnet core 3.1 相關套件

 最近因為舊的筆電電池不堪使用,因此在一些專案完成之際,興起了換機的念頭.....

但是....換機後要面對的客題之一,就是要安裝新的開發環境,在兩年前我開始使用dotnet core做專案練習,是用 dotnet 2.2, 但如今2021 年,當然也是找一下目前official 提供的版本有哪些,順便重溫之前安裝開發的過程

這次基於讓自己能夠快速上手,我選擇與  dotnet core 2.2 比較接近的 3.1版本,這裡可以到官網下載相關版本的 sdk 及 runtime 

https://dotnet.microsoft.com/download/dotnet  

目前 .NET 5 是建議的開發下載版本


因為是考量將過去 dotnet core 2.2 的專案,能夠順利升級 dotnet core 3.1 ,因此就選擇 .NET Core 3.1 的版本進行安裝

點選連結後,會進入SDK 以及 Runtime 的下載頁面,在這裡可以下載需要的安裝使用的檔案

小弟一進到下載頁面,就抓了這些回來


上圖裡面的 dotnet-sdk-3.1.408-win-x64 是在開發的時候,必須先安裝的,才可以新增 core 3.1 的相關專案,其它部份我還安裝 dotnet-runtime 及 windowsdesktop-runtime 檔案,其中 dotnet-runtime 是針對 Windows IIS 建立站台 


這是安裝後的環境,因為之前也有安裝 Visual Studio,裡面有內建的 dotnet core 2.1 相關版本,其它都是新安裝的 dotnet core 3.1

可以在命令工具裡面檢查所安裝的 sdk 及 runtime 版本



dotnet core 3.1 已經提供更多的專案範本供開發人員使用(執行 dotnet new -l)



 dotnet core 3.1 開發套件的部份,就大概先介紹到這裡,下一篇將介紹 VsCode 開發工具的使用安裝


留言

這個網誌中的熱門文章

大社老街屋巡禮

  這座三合院的馬背雕飾蠻細工的 上面兩幢的側牆馬背,都有特別的雕飾,這是常見的三合院風格 在我走回程往我家的方向,又看到幾座大院,後頭都是現代化的樓房 這座三合院蠻有規模的,院子邊還有一座古井,也很有歷史了 這是舊三合院的側屋殘壁,屋頂損壞後就沒再修護了 三合院的側牆 走到了三奶里,這邊就有三座古厝 大社最有名的巫家老厝,老厝是在大社的市中心,黃昏市場外面 老厝的院子保存的很完整 大院的右側一角 老厝的左側小旁門 巫家老厝外院 這座古厝在大社三奶里也蠻有名的 大瓦厝的側邊外牆 房子外牆很典雅,搭配裡面有層次的老建物 房子後頭的一塊小田地,有點像我以前屏東阿嬤家的古厝風格 這個景色很像油畫上面看到的,這區塊的古厝週邊都蓋滿了樓房 走到了大社觀音里後可以看到密集的巷弄老房 巷底的老房子,窗戶上緣有雕花裝飾 老三合院的正廳 巷弄邊老房子一角 在街上看到老房子常常有這個廣告 老巷弄與老房,搭配著新跑車 觀音里的老巷弄三合院

週末假日吃個美食簡單生活、到附近廟宇特寫

這些都是7/25用餐的時候,拍下來的水生植物,這張的應該是布袋蓮 這是鄰居家外面一棵果樹所開的果實 這是保安宮金爐上的李鐵拐 這是住家附近的保安宮,是供奉媽祖的一座宮廟,廟宇的屋瓦彩繪相當緊湊 這是萬善堂金爐上的李鐵拐,住家附近大廟的金爐,都有李鐵拐的像 這間是在住家陽台遠眺可以看到的住宅,很符合目前的設計風格 7/25的中午和老婆去萬丹的香榭簡餐店吃午餐,這是第二次來這裡用餐 這是主餐附的湯 這是主餐,香煎雞腿肉 這是主餐附的小菜 這也是主餐附的小菜 這焗烤是老婆點的,我吃一口還蠻美味的 餐廳的環境蠻舒適的 餐廳外面的水生植物栽植

Quartz.net 升級測試

因為工作的關係,有個程式功能需要透過一個穩定排程工具進行處理,評估之後選擇了Quartz.Net 我是透過.net 的NuGet套件進行下載安裝,這個版本(V3.0.6)必須使用.net 4.5.2之後的版本 進到程式裡面,開發環境的設定初始化,建立ScheduleFactory、Scheduler 這部份需建立兩個全域的物件,StdSchedulerFactory與Scheduler 建立工作及觸發器 由於筆者是在windows form專案,因此在Form_Load階段必須建立工作流程 在TestAsyncJob裡面 建立了 IJobDetail 類別job,並註冊CsCountJob(自定的工作執行器) 建立 ITrigger  trigger工作觸發器 Trigger的觸發方式有蠻多的,例如 WithSimpleSchedule、WithDailyTimeIntervalSchedule、WithCronSchedule及WithCalendarIntervalSchedule 這次專案是使用WithDailyTimeIntervalSchedule,並設定每5秒進行一次trigger 完成Job與Trigger 的宣告後,再加入到Scheduler的工作排程 創建工作實體物件 CsCountJob是由 IJobDetail 所註冊的工作實體, 用來執行所排定的工作內容,實作IJob介面 Execute method,是實作IJob的工作執行方法,可以放置要進行執行的工作區段 目前Execute內部是用來處理Udp通訊封包的資料接收,並即時回饋至UI。 JobDataMap 物件是由 IJobDetail 所定義的參數容器,主要是用來傳遞工作執行所需要的參數資訊。 另外在工作實體的宣告,在工作類別會使用 DisallowConcurrentExecution 進行過濾,主因是工作排程是每5秒一次,但若單次的工作執行階段會超過Trigger的秒數時間,為避免排程出現干擾的狀況,必須在類別宣告[ DisallowConcurrentExecution ],若當次排程尚未完成,則在trigger後的工作執...