Alan Tsai 的學習筆記


學而不思則罔,思而不學則殆,不思不學則“網貸” 記錄軟體開發的點點滴滴 著重於微軟技術、網頁開發、DevOps、C#, Asp .net Mvc、Azure、AI、Chatbot、Docker、Data Science

[sql]怎麽快速從現有的資料庫Table產生出符合過濾條件資料的insert sql語法

[sql]怎麽快速從現有的資料庫Table產生產生出符合過濾條件的insert sql語法.jpg
圖片來源:https://pixabay.com/en/despair-alone-being-alone-archetype-513528/

有時候想要把現有的資料庫裡面的data傳遞給別人,但是又不想要把整個資料庫都給對方,這個時候給對方insert data的sql檔案是最快的。

但是,如果要自己手寫這個sql語法,如果只有1~2筆還好,但是如果有幾十筆呢?

如果不想要產生整個Table的資料,而是只有符合某些特定條件的才要,那麽要一筆一筆弄也太累了。

有沒有什麽工具可以使用讓這件事情變成只需要幾秒鐘就可以做到的呢?

這篇介紹一下兩種情景的產生方式?

看全文>>


[Azure DevOps]如何設定Pull Request的預設文字模板(template)

[Azure DevOps]如何設定Pull Request的預設文字模板(template).jpg
圖片來源:https://pixabay.com/en/despair-alone-being-alone-archetype-513528/

Pull Request是一個非常好的Code Review方式,也是當初Github讓git火紅起來的其中一個原因之一。

在建立Pull Request的時候,一般會有一段訊息可以輸入,這個訊息主要描述了這一次Pull Request的一個主要目的。

但是,當團隊合作開發的時候,很有可能A工程師會輸入一種格式的内容,而B工程師又是另外一種。或者有時候有些條件需要符合才應該發起Pull Request,但是工程師忘記了,造成Reviewer需要花時間最後才發現根本最基本的條件都沒達到。

有沒有什麽方式可以提醒工程師在Pull Request發起的訊息要打好,並且該檢查的東西都要檢查過了呢?

這一篇,來看看在Azure DevOps裡面,如何透過建立template(範本)達到這個需求。

看全文>>


[faq]如何故障排除ASP .NET Core網站啟動失敗問題

[faq]如何故障排除ASP .NET Core網站啟動失敗問題.jpg
圖片來源:https://pixabay.com/en/despair-alone-being-alone-archetype-513528/

辛辛苦苦開發的Asp .Net Core網站做完了,在local測試也沒什麽問題了,接下來肯定是要發佈到正式機器讓世界看看你的傑作。

但是,當發佈到Azure Web App上面,卻出現了An error occurred while starting the application,然後其他除了執行環境訊息之外什麽訊息都沒有。

這個時候該怎麽辦?我只是想要把網站run起來怎麽那麽困難!!!

這篇將介紹如何偵錯這類的問題。

看全文>>


[.net core]如何在開發階段透過Visual Studio設定不同的執行環境 (環境變數)

[.net core]如何在開發階段透過Visual Studio設定不同的執行環境 (環境變數).jpg
圖片來源:https://pixabay.com/en/despair-alone-being-alone-archetype-513528/

在上一篇([faq]ASP .NET Core 如何在開發的情況下讓Controller不需要過Authorization (驗證))介紹了如何透過當執行環境是Development的時候不要過驗證。

透過那樣的設定可以讓開發者在開發階段的時候不用擔心驗證的部分。不過有時候需要把驗證的部分一起考慮進去怎麽辦?

例如想要做整合測試,確保需要權限的api邏輯沒有錯誤的時候怎麽辦?總不能夠直接打staging的機器吧。

這件事情其實在Visual Studio可以很容易的辦到,來看看如何切換執行環境。

看全文>>


[faq]ASP .NET Core 如何在開發的情況下讓Controller不需要過Authorization (驗證)

ASP .NET Core 如何在開發的情況下讓Controller不需要過Authorization (驗證).jpg
圖片來源:https://pixabay.com/en/key-tag-security-label-symbol-2114047/

最近常開發以及維護ASP .NET Core Web API的網站,其中一個會遇到問題就是,如何在開發的情況下繞過驗證/授權(Authorization)

這篇將介紹,如何透過設定的方式一次開啓驗證以及不驗證。

看全文>>


[faq]Windows 1803之後git for windows無法透過Start-SshAgent啓用ssh agent - 需要一直輸入passphrase的問題

[faq]Windows 1803之後git for windows無法透過Start-SshAgent啓用ssh agent - 需要一直輸入passphrase的問題.jpg
圖片來源:https://pixabay.com/en/despair-alone-being-alone-archetype-513528/

還記得之前有一篇介紹git for windows最新版本的Credential Manager有問題導致沒有辦法和遠端repo溝通(Windows安裝 git 2.19.1 之後做git clone-pull-push出現)。透過那一篇,理論上和遠端repo驗證就沒什麽問題了。

不過我自己在使用的時候發現,不知道爲什麽Azure DevOps的repo雖然跳出來輸入的是正確的帳號和密碼,但是git就是出現驗證失敗(github就不會)。

好吧,那換一種驗證方式,改成使用ssh。

不過用ssh又遇到另外一個問題,每一次和遠端溝通都要輸入passphrase超級麻煩,這個時候突然想起以前寫過(何謂ssh,在Windows下如何使用ssh,如何在Windows透過ssh下載和上傳程式到github)透過ssh agent不用一直輸入密碼。

興奮的打開那一篇,學著裡面輸入Start-SshAgent,結果出現了error:1058

什麽鬼,難道不能夠讓我開開心心的pull/push然後不輸入密碼嗎?

這篇將來介紹到底在Windows 1803之後做了什麽導致ssh agent啓動不起來。

看全文>>


[Bot Framework V4][10]在Dialog裡面做Branching以及Looping把不同功能更加模組化

[Bot Framework V4][10]在Dialog裡面做Branching以及Looping把不同目的更加模組化.jpg
圖片來源:https://pixabay.com/en/books-spine-colors-pastel-1099067/ 

在上一篇([09]使用waterfall建立表單式填寫)介紹了使用watfall的方式達到建立一個表單式搜集的chatbot。

裡面爲了簡化把取得姓名的部分暫時拿掉了,但是在實務上不同邏輯的dialog可能會存在,那怎麽辦呢?

這篇將介紹透過Dialog來做Branching以及Looping。

這篇的程式碼github頁面是alantsai-samples/mhat-hotelbotv4:blog/chapter-10

看全文>>