Azure Bot Service 快速建立對話機器人的服務介紹

Azure Bot Service 是一套專用於開發、運行對話機器人的整合環境,也可以說是一個解決方案,裡面關聯到的功能、服務相當多元,從建置機器人對話服務、連結至各對話頻道、測試對話功能,甚至佈署與管理,都包含在 Azure Bot Service 中。

輕鬆解決 NPM 的 Could not load the Visual C++ component "VCBuild.exe" 錯誤訊息

有時候使用 npm 安裝或還原套件的時候,出現 MSBUILD : error MSB3428: Could not load the Visual C++ component "VCBuild.exe" 的錯誤訊息,這是因為所相依的工具需要系統額外的工具所造成,這裡記錄一下解決方法。

在 Visual Studio 中發行不用安裝的 EXE 可執行檔

Visual Studio 預設在發行 WPF 專案時,會幫你將專案封裝成可安裝檔,並幫你製作 ClickOnce 安裝精靈,方便你做發布。不過有時候只是做一個簡單的 WPF 桌面應用程式,只想要簡單傳給使用者使用,如果使用者使用時還要跑一段安裝步驟,就顯得相當多餘。

MVP 成就達成,感謝各位先進一路上的指導

今天收到來自 Microsoft MVP Program Team 寄來的 Award Kit,第一次看到 MVP 獎盃實體,還附有寫 Poy Chang 的 MVP 證書,心中真是又驚又喜,這一路上要感謝的人真的太多了,先讓我謝天謝地,謝謝各位一路上的指導。

如何取得免費 Apple 開發帳號的 App Provisioning Profile 並用在 Visual Studio App Center 中

前情提要:因為我只有免費 Personal Team 的 Apple 開發者帳號,又想要玩玩看 Visual Studio App Center,讓 App 開發也能有 CI/CD 的開發流程,而要讓 App Center 能順利建置 iOS App 專案,你必須要提供開發人員憑證檔(Certificates),以及 App 項目描述檔 (Provisioning Profiles),如果你是付費開發者帳號,可以從 Apple 開發者網站去下載 Provisioning Profiles,但免費的 Personal Team 帳號就無法在該網站下載了,這時候該怎麼辦呢?

使用 VSTS 建置並佈署多個 Azure Web App

如果今天想要使用 Visual Studio Team Service 提供的持續整合和部署 (CI/CD) 管線,建置並發行多個 ASP.NET 網站專案至 Azure 雲端時,預設情況下,你會發現建置任務會兩個網站專案都建置,但在佈署任務時,你無法指定要佈署哪一個建置後的網站專案,而且只有某一個網站專案會被佈署。

使用 VSTS 佈署 Azure Web App 發生 ERROR_FILE_IN_USE

Visual Studio Team Service 所提供的 CI/CD 功能非常強大且很容易使用,內建了很多任務 (Task) 可以直接取用,甚至還提供許多設計好的範本讓你直接套用,相當方便,例如 Azure Web App 範本,可以幫你從做了一套從還原套件至編譯然後佈署至 Azure 一系列的流程。不過對於持續運行的站台,使用這個 CI/CD 範本可能在佈署至 Azure 這段發生 ERROR_FILE_IN_USE 錯誤。

建議使用這種方式 Import RxJS 的各項功能

在 RxJS 5.4 以前,常使用 import 'rxjs/add/operator/map'; 這樣的方式來匯入 RxJS 的操作符,但這樣的做法是會有副作用的,如果使用 RxJS 5.5 以後的版本,建議使用 import { map } from 'rxjs/operator/map'; 這樣的方式來匯入。

取得資料模型的屬性設定

建立資料模型時,我們可以透過 Data Annotations 的方式來設定該資料模型的資料欄位屬性,藉此增加資料欄位的特性,例如使用 DisplayAttribute 標示該資料欄位要顯示的字樣,在用 ASP.NET MVC 時常透過這樣的方式來設定資料模型,甚至在 Entity Framework 中,也會用這樣的方式來設定欄位屬性,但我們怎樣用程式來抓到這屬性的值呢?

更新成符合 .gitignore 設定的追蹤狀態

如果開發到一半,你才加入 .gitignore 了話,之前被加入 Git 版控的檔案將不會被排除,這些已經加入的檔案將持續被 Git 追蹤,這時候我們可以怎麼做,才能把不再需要被版控的檔案移除,並請不再被 Git 追蹤呢?