ASP.NET MVC定名空間時惹起毛病的處理辦法。本站提示廣大學習愛好者:(ASP.NET MVC定名空間時惹起毛病的處理辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是ASP.NET MVC定名空間時惹起毛病的處理辦法正文
應用VS2012新建了一個Asp.net mvc5的項目,並把項目標定名空間稱號更改了(Src更改成UXXXXX),然後就招致了以下毛病
剛開端今後是項目標屬性中的定名空間沒有更悛改來的成績,但我在重定名時更改的是全局的稱號,並且一切文件的定名空間都曾經更悛改來了
稍候思慮了一下並在處理計劃裡搜刮了"Src"除頁面中援用的js劇本外還發明Views/web.config文件中包括"Src"
Asp.net MVC主動生成的代碼以下,可以看到主動生成的代碼將Views/web.config裡引入的定名空間歸並到了View頁面代碼中小我料想如許做的緣由是在views/web.config裡設置的定名空間,便可以在View模板中直接應用設置裝備擺設文件中設置的定名空間下的類型
做了個實驗(確保Views/web.config裡沒有援用System.Text定名空間):
將View中的的內容全體清空(包括_ViewStart.html和_Layout.cshtml等)
將views/Login.schtml內容清空並寫入以下內容,然後從新生成並在閱讀器裡檢查,就會湧現以下毛病(緣由是StringBuilder沒有援用定名空間System.Text)
處理方法有兩種
在Views/web.config中導入System.Text(你須要的定名空間)在視圖模板中應用完全的類型名(System.Text.StringBuilder)來應用StringBuilder
@{ DateTime d= DateTime.Now; //必需在Views/web.config 設置裝備擺設文件中設置援用System.Text定名空間不然將報錯 // <system.web.webPages.razor> // <pages pageBaseType="System.Web.Mvc.WebViewPage"> // <namespaces> // <!--在全局視圖模板中援用定名空間,在模板便可以直接應用該空間下的類型--> // <add namespace="System.Text" /> // </namespaces> // </pages> // </system.web.webPages.razor> //在設置裝備擺設文件中援用定名空間後,視圖模板中沒有主動完勝利能, VS在編譯時也不會檢討該類型能否存在 //假如類型不存在或輸出毛病,只要在運轉時才會報錯, StringBuilder sb = new StringBuilder(); //在視圖模板中直接應用完全的類型,不須要在設置裝備擺設文件中設置 //VS固然有主動完勝利能,但異樣在編譯時也不會對類型時行檢討 //異樣只要在運轉時才會報錯 System.Text.StringBuilder sb = new System.Text.StringBuilder(); sb.Append("1,"); sb.Append("2,"); } @d<br /> @sb.ToString()
以上就是為年夜家供給的處理ASP.NET MVC 重定名(定名空間)而招致毛病的辦法,願望對年夜家的進修有所贊助。