急啊,请专家指导!关于不扩展类System.Web.UI.Page,因此此处不允许。

mavisziyou 2012-03-23 11:03:59
我的代码如下:
在Login.aspx.cs:
namespace Bookstore
{
public partial class Login :Page
{

protected void Page_Load(object sender, EventArgs e)
{

}
}
}

在Login.aspx:
<%@ Page language="C#" Codebehind="Login.aspx.cs" AutoEventWireup="true" Inherits="BookStore.Login" %>
<%@ Register TagPrefix="uc1" TagName="Header" Src="modules/Header.ascx" %>
<%@ Register TagPrefix="uc1" TagName="Menu" Src="modules/Menu.ascx" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

另外,我在BookStore项目中添加了一个类BasePage.实现如下:
namespace BookStore
{
/// <summary>
/// 所有Web页面的父类。
/// </summary>
public class Page : System.Web.UI.Page
{
public Page()
{

}

/// <summary>
/// 错误处理
/// </summary>
/// <param name="e">错误句柄</param>
protected override void OnError(EventArgs e)
{
base.OnError(e);
string errorMsg = Context.Error.Message;
Response.Redirect("ErrorPage.aspx?errorMsg=" + errorMsg);
}
}
}
执行Login.aspx后提示错误:
分析器错误消息: “BookStore.Login”不扩展类“System.Web.UI.Page”,因此此处不允许。

源错误:


行 1: <%@ Page language="C#" Codebehind="Login.aspx.cs" AutoEventWireup="true" Inherits="BookStore.Login" %>
行 2: <%@ Register TagPrefix="uc1" TagName="Header" Src="modules/Header.ascx" %>
行 3: <%@ Register TagPrefix="uc1" TagName="Menu" Src="modules/Menu.ascx" %>


源文件: /Login.aspx 行: 1










...全文
2846 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mavisziyou 2012-03-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 porschev 的回复:]
检查一下:Inherits属性是否等于.cs文件的命名空间.类名

还有,你新建的PageBase名字叫Page?

改一下名字比如:BasePageFront
[/Quote]


上面代码不是都写了吗?一样啊,另外BasePage的class就是命名为Page啊。在解决方案的Bookstore建立的类,属于命名空间Bookstore。
porschev 2012-03-23
  • 打赏
  • 举报
回复

检查一下:Inherits属性是否等于.cs文件的命名空间.类名

还有,你新建的PageBase名字叫Page?

改一下名字比如:BasePageFront

mavisziyou 2012-03-23
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 gaind 的回复:]
你先把命名改一下吧
你login类继承page类,最好是讲page改为pagebase这样好一点,名称空间没引用的话系统不知道是引用的BookStore.page还是System.Web.UI.Page

或者改为login:BookStore.page
[/Quote]

我试过了,那个BookStore.page无效,还有啊,就算我不用Page,改为继承System.Web.UI.Page还是不行!
朕赐你肥皂 2012-03-23
  • 打赏
  • 举报
回复
你先把命名改一下吧
你login类继承page类,最好是讲page改为pagebase这样好一点,名称空间没引用的话系统不知道是引用的BookStore.page还是System.Web.UI.Page

或者改为login:BookStore.page
朕赐你肥皂 2012-03-23
  • 打赏
  • 举报
回复
命名空间Bookstore不存在类型或命名空间名称“Page”

晕,这个Bookstore.Page 是不是单独生成的一个dll啊,你有木有引用啊
mavisziyou 2012-03-23
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 gaind 的回复:]
BookStore.Login 继承 BookStore.Page
BookStore.Page继承System.Web.UI.Page

如果名称空间都加上去了,这是可以的

你贴下你更改后的代码看看
[/Quote]

namespace Bookstore
{
public partial class Login: Bookstore.Page {。。。。

提示的错误是:命名空间Bookstore不存在类型或命名空间名称“Page”.我的class Page是这样建立的,就在在项目中添加--新建项目--模板选择“类”,然后的代码就在问题提问那里粘贴的有。
朕赐你肥皂 2012-03-23
  • 打赏
  • 举报
回复
BookStore.Login 继承 BookStore.Page
BookStore.Page继承System.Web.UI.Page

如果名称空间都加上去了,这是可以的

你贴下你更改后的代码看看

62,267

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧