2011-09-21 109 views
1

您好我有一個ASP Web應用程序在C#上運行,作爲其後端,我試圖運行但該網頁(在我的盒子上本地運行)給了我錯誤消息。現在webapp試圖引用的命名空間是「using LAD.CDD.NSJ;」它們位於App_Code文件夾中。無法找到類型或名稱空間名稱'LAD'(您是否缺少using指令或程序集引用?)

這些文件的名稱是Common.cs,Email.cs,Data.cs和User.cs.

它們都在代碼中有一個叫做LAD.CDD.NSJ的命名空間。以前的程序員並沒有將這些文件製作成一個dll文件,而是將其保存爲一個.cs文件。我正在嘗試將這些文件用於其他項目,但不斷收到該錯誤消息。

+0

是這些文件的.cs現在添加到您的網絡應用程序? – Praveen

回答

2

App_Code文件夾是ASP.NET中的一個特殊文件夾。 ASP.NET會將類型App_Code編譯成實際上與您的Web應用程序程序集分離的程序集。這意味着,當您嘗試使用後端代碼中的這些類型(例如MVC控制器)時,它無法解析類型,因爲這些類型的Build Action設置爲Content。通過該構建操作,該文件將不會包含在主應用程序的編譯中。

我建議做,是使用App_Code因爲簡單地改變生成操作Compile不會停止ASP.NET動態編譯一個App_Code組裝溝,所以你最終曖昧類型(即運行時不知道是否使用編譯到主應用程序組件的類型,或動態App_Code文件彙編。

移動這些文件到另一個位置,並設置生成操作(在屬性),以Compile

+0

我在看,並認爲這可能是問題的一部分但我真的不知道是否有所作爲。你很難做到這一點,我很感動。感謝你的回答。 – nhat

+0

如果我移動這些文件,你推薦我在哪裏移動它?除了App_Code文件夾以外的任何文件夾? – nhat

+0

Web應用程序不應該關心你的文件夾結構是什麼(在使用特殊的ASP.NET文件夾之外)。目前常見的做法是使用'Models'文件夾,但我經常覺得並不總是描述其中包含的類型。 –

相關問題