[Visual Studio] 爲什麽發生例外的時候,在偵錯模式下沒有自己進入中斷點
一般來説,當Visual Studio進入到了debug (偵錯) 模式的時候,只要有任何的exception (例外) 發生的話,就算沒有下任何的breakpoint (中斷點) ,Visual Studio也會自動停下來。
但是如果有天Visual Studio不在停下來的話怎麽辦?
這篇來看一下Visual Studio裡面一個很重要的設定:Exception Setting。
一般來説,當Visual Studio進入到了debug (偵錯) 模式的時候,只要有任何的exception (例外) 發生的話,就算沒有下任何的breakpoint (中斷點) ,Visual Studio也會自動停下來。
但是如果有天Visual Studio不在停下來的話怎麽辦?
這篇來看一下Visual Studio裡面一個很重要的設定:Exception Setting。
在上一篇([faq]ASP .NET Core 如何在開發的情況下讓Controller不需要過Authorization (驗證))介紹了如何透過當執行環境是Development的時候不要過驗證。
透過那樣的設定可以讓開發者在開發階段的時候不用擔心驗證的部分。不過有時候需要把驗證的部分一起考慮進去怎麽辦?
例如想要做整合測試,確保需要權限的api邏輯沒有錯誤的時候怎麽辦?總不能夠直接打staging的機器吧。
這件事情其實在Visual Studio可以很容易的辦到,來看看如何切換執行環境。
在上一篇([39]Video Indexer - 讓影片可以被搜索和分析出影片的重點)介紹完了Cognitive Service的整合服務Video Indexer了之後,這篇來介紹微軟怎麽讓開發著使用Cognitive Service便的更加的容易。
看看管理Cognitive Service的好工具:Microsoft Visual Studio Tools for AI能夠做到什麽。
在開發的時候,能夠用Visual Studio (以下簡稱VS) 快速定義到要改或者想找到的程式碼片段很重要。
假設本來要花10秒才能夠打開要的片段,透過使用VS和套件的功能能夠在3秒內就打開,只要發生10次就能夠節省1分鐘的時間。無形之中就可以省掉很多零碎的時間。
這篇將會介紹如何用VS內建的移至 (Go to)找到某個程式碼片段,用codinion套件快速找到目前打開的檔案member。
Visual Studio(以下簡稱VS)是.Net開發者的最主要工具,而開發者天天面對的就是寫code。所以,讓code看起來舒服,好辨識非常的重要。
這篇將會對於如何讓看code的時候更加舒服,並且透過顏色的方式讓整個code更加容易辨識。
最近在和同事聊天的時候,才發現到其實雖然我一直以來「以為」有多次強調該如何用Visual Studio run及進入debug比較節省時間, 但是其實有些同事還是不知道。
因此,準備一系列我個人認為大家應該都會的開發工具小技巧,這篇將會從開發每天都會做的事情,run及debug開始:在用Visual Studio開發的時候, 到底應該怎麼run和debug才是最有效率的方式,以及如何使用免費的套件ReAttach來讓debug流程更加的容易。
在上一篇([12]TemplateBuilder建立Multi Project和Item Template)介紹完最複雜類型的template - multi project template之後,基本上已經涵蓋一般常見到的情況了。
在這一篇將會對於這一系列所介紹的方式做個總結,並且展望接下來可以關注的方向。
在上一篇([11]深入了解TemplateBuilder的特殊檔案設定方式)對於TemplateBuilder的一些特殊檔案的設定做了更詳細的介紹,對於一般微調已經夠用了。
不過如果要建立Multi Project還未遇到一些問題,因此這篇將會對如何用TemplateBuilder來建立Multi Project的template和快速介紹建立Item Template。
在上一篇([10]用SideWaffle建立Project Template)了解了如何用SideWaffle建立出project的方式。
在這一篇將會更深入的介紹TemplateBuilder裡面的一些特殊檔案的作用和如何微調讓產生出想要的Template。
在上一篇([09]內建VSIX的缺點 - SideWaffle基本介紹)介紹完了內建VSIX template在維護上面的不方便和對於SideWaffle做了一個初步的介紹。
在這篇,將會使用SideWaffle來建立Project Template - 看看和內建的做法有何不同。
在上篇([08]Visual Studio Experimental Instance 和 VSIX template的細節設定介紹) 介紹完了Visual Studio(以下簡稱VS)的Experimental Instance的一些維護方式和VSIX template的一些細節設定。內建VSIX方式建立template基本就告一個段落。
不過會發現雖然用VSIX可以版控template專案和部署的時候變得容易,但是建立template的過程有些地方還是過於繁瑣。SideWaffle因此而誕生。
這篇將會對現行做法有什麼問題在做一些介紹,和SideWaffle如何讓這些變得更加容易。
在上篇([07]匯出template建立小總結,更好的建立方式介紹 VSIX)介紹了如何透過VSIX的方式建立一個Visual Studio(以下簡稱VS)的套件來安裝template。
在這篇則會針對測試用的Experimental Instance
和VSIX建立方式的一些小地方做延伸介紹。
在上一篇([06]建立Item Template)介紹完了Item Template的建立方式之後,基本上關於template建立方式的介紹就結束了。剩下只是透過介紹的內容微調自己的template達到想要的目標。
Template建立方式講完了,但是另外一個問題出現了,這種建立出來的template在管理上面非常的不方便,例如沒有版控,安裝還要到特定位置等,是否有什麼方式可以讓管理變得更加簡單嗎?
在上篇([05]建立多專案(multi project)的Template)了解了如何建立Multi Project了之後, Project Template基本上就告一個段落了。
在這篇則是針對另外一種Template:Item Template的建立方式做一個介紹。
在上篇[04]了解vstemplate來微調匯出的Template和強制VS更新Template的方式 了解了project template的最重要檔案,vstemplate
並且了解了如何微調匯出的Template。
在這一篇將會在了解如何調整vstemplate
來建立多Project(multi project)的Project Template。
在上一篇[打造自己的template-建立一致性程式碼][02]了解template類型和建立出要變成範本的程式建立出一個能夠用Console Process Template套件建立出來的的Echo程式之後,在這篇我們將會把建立的程式變成範本。
我們將會透過VS匯出的功能產生Template,並且介紹如何匯入匯出的template。
在上一篇[打造自己的template-建立一致性程式碼][03]透過匯出建立Project Template透過匯出的方式得到了 一個zip檔案。可以透過放到對應位置來達到安裝到VS上面。
但是匯出來的zip檔案其實有一些不如意的地方,因此在這篇將會介紹Project Template組成的原理來方便微調並且介紹如何讓VS更新Template。
上篇了解了template的重要性之後,在這篇將會先介紹Visual Studio裡面的兩種Template:Project Template和Item Template。
了解完兩種template類型之後,將會開始打造我們的template。這邊會以一個我自己的的open source console專案作為之後範本的目標,然後建立出一個實用這個套件的簡單console程式,未來會被用來做於template。
在公司裡面或者自己建立的套件/框架一般來說使用上都有一定的規範。例如ViewModel應該開在哪裡?建立之後要繼承什麼class?應該要有什麼namespace等。
如果規範沒有好好遵守,很容易一個人寫一個樣,另外一個人寫另外一樣 - 或許從最終結果來說沒有差異(會動就好XD),但是對於未來要維護的時候會造成很大困擾。
因此如何讓不同團隊成員有一樣概念來建立一致性專案就是一件非常麻煩的事情,而Template(範本)就是專門來解決這個問題。
隨著Visual Studio 2017發佈之後,C# 7也同時發佈了。
C# 7 和 C# 6一樣,帶來都是比較偏幫助開發的時候寫起來更加簡潔的一些寫法,因此很容易就會想要使用來增加易讀性。
這個時候如果團隊使用的Visual Studio版本不同,容易就會發生編譯問題,以Visual Studio 2015來說,在編譯C# 7 就會出錯,那是否就不能夠用了呢?
「工欲善其事,必先利其器」作為.Net 開發者來說最大的利器就是Visual Studio。
最近Visual Studio剛過完20歲週年並且發佈了最新版本VS 2017,當然要第一時間來試試看到底可以對開發增加多少幫助,這個時候會發現,怎麼都找不到離線安裝的版本了呢?
這篇將會介紹如何建立離線安裝版本的安裝檔。