更新到 VS2015 CTP 之後,今天要改項目中的一個東西,然後就不得不把 C# 6.0 改變的文法代碼中改了下(之前沒改,大約200多個),首先,比如下面示例代碼:
項目中有很多這樣的類似代碼,這些都得改掉,怎麼辦?手動改???算了,還是批量修改吧,但是怎麼批量替換呢,難道直接把“ {”替換成“{”,但是“$"該怎麼加呢?這個問題我思考了好久,之後還想用正規表達式替換,但是文法寫不出來,哎,最後的替換方式是:手動+替換,替換“ {”,然後手動在字元串前加“$”。
這裡需要注意的是,千萬不要批量替換“ {”,因為替換之後,你不知道哪裡用到了字元串變量,因為它會把“{”作為字元串的一部分,而沒有了錯誤提示和智能提示,這個千萬要記住,如果你這樣替換,那你就死了。
再記錄一個,之前在"{"中,寫三目表達式是可以的,比如下面:
但是,替換成現在的文法特性,比如下面:
上面這樣寫是會報錯的,這個問題也困擾我很久,難道這也不支援?最後搞了好久,發現要在表達式上加“()”,如下:
事情還沒完,話說我改的差不多了,我自認為是把所有的文法特性的代碼都改了,然後充滿信心的“Build”,然後就出現了下面這樣的情況:

錯誤資訊:“Metadata file 'xxxxxx.dll' could not be found” CSC,這個問題看到都頭疼,然後我就搜遍了 Google,基本上的解決方式是:
Clean every project individually (Right click> Clean).
Rebuild every project individually (Right click> Rebuild).
Rebuild the startup project.
無效,再搜,再嘗試,無效,再搜,再嘗試。。。
解決一個問題,如果方向錯了,那你就死慘了,我現在就是這樣。
最後猜怎麼着?還是代碼問題,有一個類庫的文法特性代碼沒有改掉,我滴媽呀,為什麼 VS2015 CTP 的錯誤提示沒有顯示出來呢,而是顯示了一些亂七八糟的東西,最後發現的地方是 Output(輸出視窗):
看到這樣的錯誤,我就釋然了,要改代碼了。
本文轉自田園裡的蟋蟀部落格園部落格,原文連結:http://www.cnblogs.com/xishuai/p/vs2015-ctp-c6-keng.html,如需轉載請自行聯系原作者