[筆記] C# 委派(delegate)、Action<T>、Func<T,TResult>
什麼是委託(delegate)委託是一種特殊的類型,它可以代表一個或多個方法。可以將委託視為一個可以存儲對方法的引用的變量。委託提供了一種方便的方式來傳遞方法作為參數,以及在運行時動態地執行方法。
委託定義了方法的簽名,其中包括方法的返回值類型和參數列表。委託可以指向具有相同簽名的任何方法。委託是一種類型安全的方式來傳遞方法參數,因為它只能存儲與簽名匹配的方法。
總的來說,Delegate是一種C#中的類型,而Callback是一種編程模式。Delegate通常用於實現Callback。
(1) Delegate是一種C#中的類型,它可以用來定義一個方法的指針,並且可以將其當做一個參數傳遞給其他方法。通過Delegate,可以實現將方法當做一個參數傳遞給其他方法,並在需要的時候動態調用這個方法。
(2) Callback是一種編程模式,用於當一個方法執行完畢後,通知其他方法。在C#中,Callback通常是通過委託(Delegate)來實現的。當一個方法完成任務後,它會調用一個Delegate,並且將結果作為參數傳遞給Delegate所引用的方法,這個方法就是Callback。
Del ...
【筆記】微軟開發者 - Office 365 E5 無限續期方式
備註: 目前微軟現階段是排隊狀況,需要等白名單(沙盒)可能要一段時間。
前言微軟已經提供很久讓開發者可以持續使用E5,相信很多人也有用過這個東西,後面發現Github AutApi 消失又再一次重複操作,這次會將重要操作列出。本篇文章提供下載點以及操作說明讓所有人可以快速創出自己的環境。
文件參考
文件參考
Office 365 E5
註冊Microsoft 365 E5 開發計劃
rclone工具
AutApi 設定如果第一次使用或是想要看詳細內容可以到第一點選項點選。本篇使用 AutoApiSecret,相信很多人都有使用過這個Api,近期有發現以前的AutoApi被Github封鎖,之後發現這東西還存在,可以暫時先觀察狀況是否持續續期。
Azure如果已經有註冊帳號可以直接按下 Azure 入口
1. 請點選 [Azure Active Directory] > [應用程式註冊]
2. 設定註冊內容
名稱 : 設定自己想要的名稱
支援類型 : 任何組織目錄中的帳戶
重新導向 URI : web - http://localhost:53682/
3. 紀錄ID務必要將 ...
C# Youtube (一) - API 筆記
(本篇為記錄使用)
Youtube API由 Google Cloud API 提供API。Google Cloud API 有很多種類如( Vision API、Speech API、Translation API、Natural Language API、Video Intelligence API等)。
API 種類
Data API
Live Streaming API
Player API
Analytics/Reporting API
API 授權
OAuth 2.0
API keys
OpenID Connect是由OAuth 2.0用於身分驗證、授權。使用 OAuth 2.0 需要憑證(用戶端 ID 和用戶端密鑰)驗證使用者,授權後會有 【Access Token】、【ID Token】兩種Token 授權。
ID Token : 格式由 JWT 組成,可以透過 JWT.IO解析。ID Token 會依據 API 授權種類決定會不會產生出 ID Token 。
Access Token : 作用是存取授權,必須要產生出這項Access Token 才能 ...
使用 Hexo (四) - (筆記)設定package json
這篇主要使要紀錄設定 package json 。
相關文件
hexo-server
package.json近期將hexo server設定方式微調,如果hexo-server 還有其他設定方式,可以透過下方使用方式加入。
123456789{ "scripts": { "build": "hexo generate", "clean": "hexo clean", "deploy": "hexo deploy", "start": "hexo server -o -p 666", "publish": "hexo cl && hexo g -d " }}
hexo server安裝方式1$ npm install hexo-server --save
使用方式
Op ...
使用 Hexo (三) - 使用 HEXO 套件
前言上一篇提到簡易的創建方式,可以讓各位順利創建。本章會教你簡單的套件,馬上就可以創建留言、音樂、書籍、影視評論等,剩餘功能委屈各位自行去作者文章測試研究<(_ _)>。
套件簡易步驟依據作者操作即可。
線上留言板
留言板-DisqusDisqus是以使用社群網路形式,向網路社群提供網站留言服務的公司。該公司的平台提供不同的功能,例如與不同社群網路服務連結、社群網路、使用者個人檔案、垃圾宣傳及審核工具、數據分析、電子郵件通知和在行動裝置留言等。
使用方式
按下 GET STARTED
按下 [I want to install Disqus on my site]
輸入網站名稱,這邊會直接對應 short name ,若有重複會提示出來。
主要注意 3.Configure Disqus、4.Setup Moderation步驟。Website URL -> Blog的Url [ https://username.githun.io/ ]這邊是評論的審核機制,你可以選擇不受限的 Balanced,或是評論是需要經過系統審核或有限的 Strict,差異解說如下:
...
使用 Hexo (二) - Theme Butterfly
前言HEXO官方網站中,有主題(theme)項目可以自行選擇需要哪種主題。HEXO THEME 我選擇Butterfly,原因有幾個僅供參考。
UI介面 : 乾淨、目錄標題選擇鍵、公告、留言板種類
文章可讀舒適度
擴充套件 : 音樂、影視、搜尋等。
依據個人喜好、需求選擇自己喜歡的主題d=====( ̄▽ ̄*)b。
安裝 THEME我們上一篇只有談到創建HEXO,接著安裝 Theme 可以選擇指令 npm 或是Git/Github下載下來。
如果你是用Clone下來,又想要push 到Github上,需要小心 .git 隱藏檔案。可能造成會無法push的危機。
Butterfly將下載好的theme把檔案放在themes資料夾底下。當然可以增加不同的主題放在一起,如下圖。
下方提供 作者Blog以及Github載點:
Jerry Blog: (https://butterfly.js.org/posts/21cfbf15/)
Butterfly 詳細使用方式 : (https://butterfly.js.org/) ...
使用 Hexo (一) - 創建 Hexo
前言前幾周 GitBook 改版,擔心會變成FaceBook 、Instagram 一樣當機不能使用,我再次挑戰GitHub Page 製作 Blog。這次不會是從零到成品,使用工具會在下方提供,再請各位多多支持。
何謂HexoHexo 是基於 Node.js 開發架框,有利於快速建立Blog,如以下特點 :
編譯速度快
支援 Markdown 語法解析文章,可使用主題渲染靜態檔案
豐富的外掛套件
支援一鍵部署到靜態網頁的空間,如: GitHub Pages 、Heroku
使用工具一、Node.jsNode.js 是能夠在伺服器端運行 JavaScript的開放原始碼、跨平台執行環境。Node.js 由 OpenJS Foundation(原為 Node.js Foundation,已與 JS Foundation 合併)持有和維護。Node.js 採用Google開發執行程式碼,使用事件驅動、非阻塞和非同步輸入輸出模型等技術來提高效能,可優化應用程式的傳輸量和規模。
二、Gitgit是一個分散式版本控制軟體,,於2005年以GPL釋出。最初目的是為更好地管理Linux核心開發 ...
C# Electron (一) - 安裝 MVC Core 設定
前言Electron 是近年來有比較多人使用的架框,最大原因是在 Winform 跨平台上無法使用,因此誕生 Electron架框。
這是目前為止是Winform替代方案,後續再做相關範例。
Electron 介紹Electron(原名為Atom Shell)是GitHub開發的一個開源框架。它通過使用Node.js(作為後端)和Chromium的彩現引擎(作為前端)完成跨平台的桌面GUI應用程式的開發。Electron現已被多個開源Web應用程式用於前端與後端的開發,著名專案包括GitHub的Atom和微軟的Visual Studio Code。
一個基礎的Electron包含三個檔案:package.json(元資料)、main.js(代碼)和index.html(圖形化使用者介面)。框架由Electron可執行檔(Windows中為electron.exe、macOS中為electron.app、Linux中為electron)提供。開發者可以自行添加標誌、自訂圖示、重新命名或編輯Electron可執行檔。
-取用於維基百科
安裝Electron一、創建專案Electron ...
C# Asp.Net - 使用 Global.asax 清除 cache 以及 controller 管控
前言配合上一張function 清單,可以得知很多 Global 能用的事件方法,這篇排除cache 問題以及好用的方法。
Global.asax提供事件筆者留事件function給各位讀者們參閱,請配合這個表格。
事件方法
事件說明
Application_Init
在應用程式被例項化或第一次被呼叫時,該事件被觸發。對於所有的HttpApplication 物件例項,它都會被呼叫。
Application_Disposed
在應用程式被銷燬之前觸發。這是清除以前所用資源的理想位置。
Application_Error
當應用程式中遇到一個未處理的異常時,該事件被觸發。
Application_Start
在HttpApplication 類的第一個例項被建立時,該事件被觸發。它允許你建立可以由所有HttpApplication 例項訪問的物件。
Application_End
在HttpApplication 類的最後一個例項被銷燬時,該事件被觸發。在一個應用程式的生命週期內它只被觸發一次。
Application_BeginRequest
在接收到一 ...
[筆記]Asp.Net - Global.asax 事件方法清單
前言在沒有.net core 環境,asp.net 其實有個 Global.asax 檔案。這檔案具有繼承 HttpApplication類,如果遇到controller 要統計、或是清除catch 從這邊排除是其中的選擇。
Global.asaxGlobal.asax 位於應用程式根目錄下。ASP.NET 頁面框架能夠自動識別出對Global.asax 檔案所做的任何更改。在 Global.asax 被更改後ASP.NET 頁面框架會重新啟動應用程式,包括關閉所有的瀏覽器會話,去除所有狀態資訊,並重新啟動應用程式域。
提供事件
事件方法
事件說明
Application_Init
在應用程式被例項化或第一次被呼叫時,該事件被觸發。對於所有的HttpApplication 物件例項,它都會被呼叫。
Application_Disposed
在應用程式被銷燬之前觸發。這是清除以前所用資源的理想位置。
Application_Error
當應用程式中遇到一個未處理的異常時,該事件被觸發。
Application_Start
在HttpApplication 類的第一個 ...