StartFMS.Extensions.Configuration 使用方式
安裝方式.NET Cli
1dotnet add package StartFMS.Extensions.Configuration --version 1.0.0
Package Manager
1NuGet\Install-Package StartFMS.Extensions.Configuration -Version 1.0.0
使用目的利用擴充方式減少呼叫的動作以及方便呼叫 Azure 設定、管理使用者密碼(secrets.json)等檔案。
使用方式
使用 Config 呼叫
GetConfiguration() 可抓取 appsetting、secrets
Azure Confidential 參數使用 GetAzureConfiguration()
範例透過 Program.cs 傳入參數
123var config = Config.GetConfiguration(); //加入設定檔var ChannelToken = config.GetValue<string>("Line:Bots:channelToken"); ...
StartFMS.Extensions.Data 使用方式
安裝方式.NET Cli
1dotnet add package StartFMS.Extensions.Data --version 1.0.5
Package Manager
1NuGet\Install-Package StartFMS.Extensions.Data -Version 1.0.5
字串轉換提供 int 、Double、float、datetime等轉換資料型態,範例如下
12int Number = "100800".ToInt();DateTime dt = "2023/3/10".ToDateTime();
千分位、小數點字串12345//千分位轉換string thousandths = "10000".ToThousandths();// 小數點string places = "10000".ToDecimalPlaces(6);
自動累加數字12string num = "0000".ToAutoNumber();string num1 = &q ...
StartFMS.Extensions.Line V1.0.2版本使用方式
安裝.NET CLI
1dotnet add package StartFMS.Extensions.Line --version 1.0.2
Package Manager
1NuGet\Install-Package StartFMS.Extensions.Line -Version 1.0.2
使用方式
DI 確認專案需求調整
需要透過 新創類別修改,並繼承 StartFMS.Extensions.Line.LineBots 對象
a.基本做法
新增類別
12345678910111213141516// Helper/LineBot.csusing StartFMS.Extensions.Line;namespace StartFMS.Partner.API.Helper{ public class LineBot:LineBots { public override void MessageText() { var @event = LineReceived.events.Fi ...
StartFMS.Extensions.Line 使用方式
起因開發過程中,使用 LineBotSDK 相當不順手以及建立方式,後面我另外把LineBotSDK 另外用 NET Core 版本擴充,方便後續引用、覆寫。請參考使用方式。
所需套件
StartFMS.Extensions.Line
LineBotSDK
備註: 初版暫時使用兩種套件合併使用,後續看看有沒有空去修正現行狀況。
使用方式本範例 .NET6.0 展示,若有其他使用操作問題,可以在下方留言。
一、新創一個類別創建一個新的 Class 改寫LineBots 內容,後續會比較好使用。
123456789101112131415// Helper/LineBot.csusing StartFMS.Extensions.Line;namespace StartFMS.Partner.API.Helper{ public class LineBot:LineBots { public override void MessageText() { var @event = ReceivedMes ...
Github - 使用 Github Deploy keys
Deploy keys透過設定 Deploy keys 可以避免掉每次 push 都要輸入帳密的流程
創建 SSH打開 [命令字元] 輸入以下內容即可。如果沒特別指定路徑預設(C:\Users\使用者名稱/.ssh/id_rsa),沒有特定指定密碼可以直接按下Enter。
1ssh-keygen
下方為ssh-keygen參數,請參閱。
創建 Deploy keys打開需要使用Deloy Keys 的 repository,按下Security > Deploy keys。若需要使用Write access權限可以直接勾選 。
輸入 KeysKey輸入框請用id_rsa.pub記事本打開,直接貼上去。
完成後,就會出現這個。
跳出帳號密碼如果經過上面設定 push 過程中,須要輸入帳號密碼可以嘗試更改本地 remote 的來源
1git remote set-url origin git@github.com:[yourgithubID]/[yourRepo].git
Github - 使用 Github Token
Personal access tokens可以不用使用SSH即可使用的一種,建立完成後會產生出Token,可用來製作API、自動部屬等、協助創作等。
官方網文件
創建 Personal access tokens點選設定後,左側最底下 Developer settings選擇 Personal access tokens即可。設定上需要注意看裡面內容進行設定。
設定內容有包含到組織相關的存取,可以透過這種方式取的組織權限。
然後就可以使用Token取得 GitHub repository。這邊必須要注意 Create 出來的Token 只會出現一次,如果不小心沒存檔無法再取得一次。
Github - 解決 PR merge 衝突問題
Github merge 遇到衝突的問題已經是常有的事情,既然要 merge 需要將新舊的資料比對、修改。Github 有提供網頁版本可以直接將衝突檔案修改後再merge。
建立 Pull Request這邊簡單敘述一下 Pull Request。當Create PR 時候,如果有衝突資訊會出現 “Can’t autoatiocally merge” 資訊,其實可以直接創建PR給作者去比對。
這邊可以把這些動作當成創建留言區塊,作者會透過 pull requests 分頁內審閱檢查內容。
修改衝突內容當作者發現對方有發出訊息時候,可以透過 Resolve conflicts 排除衝突問題。
修正注意事項Github 這塊需要留意以下幾點
修改完畢後點選 “Mark as resolved”
必須要將左側衝突檔案全部修改完成
以上修改完成後,就可以正常merge 內容。
參考文件
Resolving a merge conflict on GitHub
C# 如何使用 Entity Framework 更新空白資料庫
前言交接前夕曾經丟了 EF 環境忘記把注意事項列給他們,包含自己不時會忘記這個使用方式。DBContext其實可以本身就可以讓空白DB創建出來,主要問題是如何使用無 .sql 之類檔案來建置、開啟環境。
Code First顧名思義是由 Code 決定有甚麼資料、對應寫回DB。如果假設一開始使用 DB First 也沒關係,兩者是不影響本章節。
前置作業建立類別(資料模型)DB First 會自動創建 類別,所以無需加入類別檔案。若是 Code First 可以參考 【ATai】大大如何使用。
123456789public class Post{ public int Id { get; set; } public int UserId { get; set; } public string Title { get; set; } public string Content { get; set; } public int Read { get; set; ...
Youtube (二) - 使用 Net6.0 製作OAuth2授權
前言製作 API 前必須先到 Google Cloud API 完成註冊,過程中會比較繁雜內容請參閱即可。
Google Cloud API創建憑證選擇 OAuth 用戶端 ID 。如果不確定授權 URL 可以先跳過。
創建專案架構需要驗證 OAuth2 先確認要設定 “重新導向 URI”,範例使用 https://localhost:999/Api/Google/Home 。
一、取得URLRedirect URL 從 Youtube API 官方網文件可以找得到,原則上直接使用下圖位置的 URL 即可。參數傳值部分官方已經有提供使用方式,因為他有特定傳參數
文件參考 : https://developers.google.com/youtube/v3/guides/auth/server-side-web-apps#httprest
二、AppSetting.json123456789101112131415{ "Google": { "Oauth": { "url" ...
C# C# Youtube (三) - 製作簡易API
前言前面使用授權部分完成後,就可以開始 API 抓取動作。Oauth2 最難部分已經完成剩下如何使用 Youtube API,API 可以透過 Youtube Data API測試結果在執行 Code部分。
備註 : 這篇主要目的做做看,之後依據情況製作下一章介紹。
Search 搜尋
API : https://youtube.googleapis.com/youtube/v3/search備註 : method 是 Request parameters 使用下方範例需要把他串成string 才能成功執行。
123456789101112131415161718192021222324252627282930313233343536[Authorize][HttpGet("search")]public async Task<string> SearchAsync(){ var users = User.Claims.Select(x => new { type = x.Type, value = x.Value ...