剛開博,實在無從下手,就先堆一篇,當做個筆記,見笑了。 雖然很早就註冊了博客園賬號,但大多進來只是隨便逛逛,或在開發過程中遇到問題的時候進來找找答案。 作為圈子裡少而不稀的女程式員,從事Web開發,接觸的一直是MVC。說真的,我對敲代碼並沒啥興趣,只是當年被調劑到了軟體工程專業,一切順其自然便走上了 ...
剛開博,實在無從下手,就先堆一篇,當做個筆記,見笑了。
雖然很早就註冊了博客園賬號,但大多進來只是隨便逛逛,或在開發過程中遇到問題的時候進來找找答案。
作為圈子裡少而不稀的女程式員,從事Web開發,接觸的一直是MVC。說真的,我對敲代碼並沒啥興趣,只是當年被調劑到了軟體工程專業,一切順其自然便走上了這條路,都是為了混口飯吃。
混沌度日,不思進取了幾年,慢慢地覺得自己好像都快沒有學習能力了,果然沒啥長進。看著時代現狀,瞅瞅自己,觀察周圍……我是不是該做點什麼改變了?畢業也有幾年了,卻也不知如何開始,儼然還是一隻迷惑的羔羊。
歡迎大家指點迷津,鄙人謹遵教誨!
一、ViewBag 提示 找不到編譯動態表達式所需的一個或多個類型
web MVC項目,在Razor視圖中,經常可以看到頁面上使用ViewBag的地方提示“找不到編譯動態表達式所需的一個或多個類型。是否缺少引用?”,但不影響項目編譯運行。
網上搜到的解決方案,然,不明所以,所以都列出來了,大家可以都試試:
1、查看是否引用Microsoft.Csharp,並將複製本地屬性設置為: true。
複製本地 可以解決複製整個解決方案到其他機器缺失引用的問題。
2、清空C:\windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root下的所有文件夾。
有幾個地方說是 刪除:C:\Users\{your computer name}\AppData\Local\Temp\Temporary ASP.NET Files 該目錄下的臨時文件即可。
以上,我都試過了,然後並沒有什麼用,所幸沒什麼影響,只是這紅色波浪線看著比較難受,暫時先放著吧,搞不好哪天會茅塞頓開。
二、無法在catch子句中等待
解決方案:
其實這個問題在C#6.0當中已經得到瞭解決:
但我想還是有部分人跟我一樣用著VS 2013,這時候我們可以通過nuget的包Microsoft.CodeDom.Providers.DotNetCompilerPlatform安裝Roslyn編譯器,會在web.config裡面配置<system.codedom><compilers>,替換掉預設的編譯器。重新生成之後bin文件夾下同時會生成一個roslyn文件夾,發佈的時候不要忘了也帶上。
<system.codedom> <compilers> <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701" /> <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\"Web\" /optionInfer+" /> </compilers> </system.codedom>