2009-06-25 57 views
4

我目前正試圖清理一些我在這裏繼承的公司網站。我設法清理了網站上的大部分錯誤,但還是有些東西在這裏。命名空間或類無法找到(ASP.NET WebSite「項目」)

我有一個母版有此代碼:

using System; 
using System.Data; 
using System.Configuration; 
using System.Collections; 
using System.ComponentModel; 
using System.Web; 
using System.Web.Security; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
using System.Web.UI.HtmlControls; 

public partial class MasterPage : System.Web.UI.MasterPage { 
    public lists m_listsClass = new lists(); 

(不,這不是一個錯字在S中的列表)。

現在的app_code我有一類lists.cs

using System; 
using System.Data; 
using System.Configuration; 
using System.Linq; 
using System.Web; 
using System.Web.Security; 
using System.Web.UI; 
using System.Web.UI.HtmlControls; 
using System.Web.UI.WebControls; 
using System.Web.UI.WebControls.WebParts; 
using System.Xml.Linq; 

/// <summary> 
/// Summary description for lists 
/// </summary> 
public class lists 
{ 
    public lists() 
    { 

當我嘗試建立在Visual Studio 2008的網站我有這樣的錯誤:

Error 3 The type or namespace name 'lists' could not be found (are you missing a using directive or an assembly reference?) C:\Users\egirard\Documents\Visual Studio 2008\Projects\iFuzioncorp\iFuzioncorp\Masters\MasterPage.master.cs 23 12 iFuzioncorp 

我缺少的東西?

另外我在服務器上看到了一些奇怪的行爲。顯然,根據IIS7它正在編譯使用.net 2.0(該池配置.net 2),但有一些"using「語句,包括Linq ...如果Linq不屬於的話,如何編譯頁面。網2本身?

只是對代碼本身的新聞細節進行編輯。沒有命名空間都隨處可見。

+0

@Erick:你錯過了告訴大家這是一個網站「項目」。這些不是項目,並且與Visual Studio中的其他類型的代碼不同。 – 2009-06-25 16:52:37

+0

@John它是一個Web應用程序項目。 – Erick 2009-06-25 18:02:55

+0

@Erick:好的,那麼請停止說網站。 :-)另外,很奇怪沒有命名空間,並且你使用的是App_Code。是否有.csproj文件? – 2009-06-25 18:16:12

回答

1

我終於明白相當最近,這是一個網站而不是Web應用程序我不得不質疑這裏的人來得到它......所以這是非常正常的所有錯誤,我沒有機會先轉換它。

1

包括在其中列出CALSS定義

命名空間定義這兩個主頁面並列出相同名稱空間下的類

0

確保在你的masterpage中,你有一個#include語句作爲列表類的一部分(如果它們在獨立的命名空間中,主頁面不會自動選取它)的命名空間。

至於奇怪的服務器端行爲,.NET 2.0,3.0和3.5都在IIS中的.NET 2.0應用程序池內運行。起初看起來很奇怪,但你已經習慣了。這裏有一點點更深入explination鏈接:

The Way I See It: Where is ASP.NET 3.5 on IIS?

0

爲了使用一個類型,你必須引用定義它的組件,包括適當的命名空間。

僅使用包含名稱空間,如果您不使用來自所述名稱空間的任何類型,則它不起作用。

0

是lists.cs封裝在名稱空間中嗎?如果是這種情況,則需要添加名稱空間(yournamespace.lists)或將其包含在masterpage中。如果您的母版頁位於命名空間中,請檢查是否

12

嗨有 - 我有類似的問題;我所有的命名空間和繼承都已到位。然後,然後我注意到類文件的生成操作設置爲「內容」而不是「編譯」(在屬性窗口。

2

無論出於何種價值可能會有一個答案很多個月後(可能不正確的),我想我應該有助於這一點:

有這種情況的發生,當你把一個網站內部的情況下另一個(即在一個子文件夾中)。 在這種情況下,合法的唯一App_Code文件夾是外部網站的App_code文件夾。也就是說,主網站根目錄下的App_Code文件夾。

如果將類文件放入ROOT網站的App_code文件夾中,也許(也許是)應該沒有必要將您的網站轉換爲Web應用程序。

0
  1. 將App_Code類的生成操作修改爲編譯。

  2. 清理並生成項目

這爲我工作。

相關問題