概述
前不久我寫過一篇文章擁抱開源,Office 365開發迎來新時代,給大家介紹了Office 365開發的典型場景是如何支持開源平台的:Office 365通過Microsoft Graph,以REST API的方式提供服務,任何開發平台都可以很方便地與其進行集成;Office Add-ins,SharePoint Add-ins和Microsoft Teams Apps開發,都可以基於標准的Web開發技術棧來實現,而且官方提供了對NodeJS,React,TypeScript等主流平台和框架的默認支持(工具和模板層面都有)。
文章發表之后,我收到不少反饋,其實我內心深處牽掛的還有廣大的.NET開發人員啊。大家知道,.NET從頭到腳都是已經完全開源了的,針對Office 365的這些開發場景,是否有開箱即用的模板可供大家使用呢?利用周末的時間,我開始了這個新的項目,就是為大家整理出來一套標准的.NET Core模板庫,歡迎用你最熟悉的姿勢關注 https://github.com/chenxizhang/dotnetcore-office365dev-templates,你可以簡單粗暴地直接給我 star,也可以 fork 這個項目通過 pull request 提交你的模板,你還可以通過issue通道給我反饋問題。
這一套模板庫,不僅僅可以降低廣大的.NET 開發人員(准確地說是.NET Core開發人員)學習和使用Office 365開發平台的門檻(尤其是如何在不同的場景下完成OAuth認證以及快速通過實例學習Graph的典型功能),還有一個獨特的價值是可以讓你在國際版和國內版這兩個平台的選擇和切換過程中少走一些彎路,我相信真正做過這方面開發的朋友們現在一定是熱淚盈眶的表情。
希望大家喜歡!
計划支持的模板
先決條件
要使用這些模板,你只需要在開發機器上面安裝了 .NET Core SDK 版本2.0 及以上即可。請通過官方網站提示到的方式進行下載和安裝(https://www.microsoft.com/net/download/)。請注意,我們現在是跨平台的哦,無論Windows,還是Mac,或是Linux都支持進行.NET Core開發。
另外,你可能至少需要一款代碼編輯器,你可以安裝Visual Studio,也可以使用Visual Studio Code,甚至是任何一個文本編輯器。我是使用 Visual Studio Code.
如何安裝模板
安裝這些模板非常簡單,你只需要一行命令即可,dotnet new -i 模板標識,例如使用dotnet new -i chenxizhang.dotnetcore.msgraph.console.CSharp 來安裝可以快速實現Microsoft Graph的控制台應用程序模板。
如何使用模板
模板安裝成功后,你可以在模板列表中看到這些新的模板,每個模板都有一個短名稱(Short Name),你可以通過 dotnet new 模板短名稱來使用這些模板,例如 dotnet new graphconsole 這句命令就可以快速基於模板創建一個可以快速實現Microsoft Graph的控制台應用程序。
每個模板都帶有一些參數以便支持不同的場景,最典型的參數是 --instance,這個參數將告訴模板引擎,你使用的Office 365環境是國際版還是國內版的,它是一個必填項,有兩個選項,分別是global代表國際版,gallatin代表國內版,但默認會設置為國際版。
你不需要記住所有這些參數,而是可以通過 dotnet new 模板短名稱 -h這樣的命令來查看該模板的介紹和參數說明。
每個模板都帶有一個詳細的說明文檔,你可以點擊上表中模板短名稱跳轉,同時在生成的代碼文件的頂部也有鏈接,我非常歡迎大家給我反饋。
如何卸載模板
在如下兩種情況下,你可能需要卸載模板
- 你不再喜歡這些模板(我希望這種情況不會發生)
- 你需要安裝模板的更新版本
無論是哪一種原因,你都可以隨時簡單地通過 dotnet new -u 模板標識 進行卸載,例如dotnet new -u chenxizhang.dotnetcore.msgraph.console.CSharp可以卸載控制台應用程序模板。請放心,我不會帶走一片雲彩。
常見問題解答(將持續更新)
- 這些模板支持哪些開發語言?
目前僅支持C#。限於能力和精力,其他的語言暫時沒有支持計划,歡迎有其他語言特長(例如F#,VB.NET等)的朋友參與該項目。

