Tag Archives: Visual Studio 2015

How to bypass Exception in Visual Studio

最近係公司寫的一個Web app 因為backend 的web api 有些問題的關係。。所以不能連接要development server 上某些data 所以久不久便彈一些 unhanded exception出來。。

嘗試 Debug的時間。。因為Visual Studio會在有 throw exception的地方停下來的關係。當你不為意的時間。會在想。。為什麼程式會停下來。。
其實可能是因為 visual studio 在  執行那些程式碼上throw 了exception停下來。自己又沒有為意

解決方法十分簡單
我們只要在 Visual Studio Throw Exception “Exception was unhandled by user code” 這個popup上
Break When This Exception Type Is User handled
untick了 “Break when this exception type is user-unhandled
下次再遇到同樣的exception時便會繼續執行

Hope you find it useful

CS1617: Invalid option ‘6’ for /langversion; must be ISO-1, ISO-2, 3, 4, 5 or Default

在公司Download / 執行網上教學的Sample Code 來測試時
久不久便會出現以下的錯
CS1617: Invalid option ‘6’ for /langversion; must be ISO-1, ISO-2, 3, 4, 5 or Default
CS1617: Invalid option '6' for /langversion; must be ISO-1, ISO-2, 3, 4, 5 or Default

這是因為Sample Code是用了Visual Studio 2015 來建立的 Default的 .Net Framework4.5.2 / 4.6
而公司是使用Visual Studio 2013.Net Framework是 4.5

所以Web.Config上有小小Mis-match
解決方便 十分簡單
我們只需要更改 compilerOptions=”/langversion:6 改變成 compilerOptions=”/langversion:5 便可以了

更改前

<system.codedom>
 <compilers>
 <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider,
 System, Version=4.0.0.0, Culture=neutral,
 PublicKeyToken=b77a5c561934e089" warningLevel="4" 
 compilerOptions="/langversion:6 /nowarn:1659;1699;1701">
 <providerOption name="CompilerVersion" value="v4.0"/>
 </compiler>
 <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+"/>
 </compilers>
 </system.codedom>

Original Web.config
更新後

 <system.codedom>
 <compilers>
 <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider,
 System, Version=4.0.0.0, Culture=neutral,
 PublicKeyToken=b77a5c561934e089" warningLevel="4" 
 compilerOptions="/langversion:5 /nowarn:1659;1699;1701">
 <providerOption name="CompilerVersion" value="v4.0"/>
 </compiler>
 <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+"/>
 </compilers>
 </system.codedom>

Web.config for VS2013
CS1617 Issue Fixed
Hope you find it useful