用户控件没有看到光明日 - 无法识别代码隐藏方法

时间:2009-08-03 23:23:22

标签: asp.net visual-studio-2008

这让我绝对疯狂。

我在VS 2008中创建了一个新的WAP项目。复制了我的网站项目中的文件。添加了所有必需的参考尝试使用“转换为Web应用程序”将Web项目转换为Web应用程序。

我的所有用户控件都无法在其代码中看到方法。他们甚至没有看到他们,所以我到处都有错误,说它不知道这个或那个方法是什么。

示例:

<%=CreateMenu(xxx.WebMenuType.Occasion, "menuShopOccasion", "Occasion") %>;

那是在我的Header.ascx

所以它出错了,因为它不知道CreateMenu是什么!

在我的Header.ascx.cs中,它在我的旧网站项目中被引用并没有问题:

protected string CreateMenu(xxx.WebMenuType menuType, string menuID, string title)
    {

...

}

2 个答案:

答案 0 :(得分:1)

我不完全确定这是你的问题,但......

您可能缺少.designer.cs文件。对于上面的例子,还有一个Header.ascx.designer.cs,它包含一个部分类(Header),它包含Header.ascx文件中控件的所有声明?

答案 1 :(得分:1)

这可能是命名空间问题。确保<%@ Page ... %>声明中的Inherits属性引用了代码隐藏文件的正确路径,包括命名空间。设计器文件也必须与后面的代码位于相同的命名空间中。