首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

ASP.NET MVC 4 無法識別 App_Code 目錄下類的解決方案

     編輯:程式設計綜合問答

現象描述

MVC 4 項目中新建 App_Code 文件夾並編寫類(命名空間 Test.Utility),Controller 中無法引用,智能感知無提示,編譯報錯「找不到類型或命名空間」。

根本原因

MVC 項目默認不將 App_Code 作為代碼編譯目錄。 Web Forms 專用目錄,MVC/Razor 項目代碼應放在 Models、Services、Helpers 等自定義文件夾,或獨立 Class Library 項目中。

解決步驟

  1. 移動代碼:將 App_Code 下的類移至 Models/Utility 或新建 Infrastructure 文件夾。
  2. 檢查命名空間:確保類文件頂部 namespace YourProject.Models.Utility 與項目默認命名空間一致或正確引用。
  3. 完全重新生成:VS 菜單 Build → Rebuild Solution。清理舊編譯緩存,解決智能感知不同步問題。
  4. 排除編譯錯誤:錯誤列表中若有其他紅錯,必須先修復,否則 Roslyn 編譯器無法完成語義分析,導致後續類不可見。

最佳實踐建議

  • 不要在 MVC/Core 項目中使用 App_Code,語義不清且易發生編譯順序問題。
  • 公共邏輯拆分到獨立 .NET Standard / Class Library 項目,多項目引用,利於單元測試與複用。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved