gpt4 book ai didi

C# 继承问题

转载 作者:行者123 更新时间:2023-12-02 23:32:03 24 4
gpt4 key购买 nike

再说一遍,我对这类事情相当陌生,也许错误消息告诉我它是什么,我只是不明白,但是...... anon.cs 中的这段代码

namespace cheese.pies.org
{
using System;
using System.IO;
using System.Net;
using System.Web;
using System.Xml;

public class CasLogin : System.Web.UI.Page
{
private const string CasHost = "notimportant";

public static string GetId()
{
}
}

在此处引用时最终给我一个错误:

<% @Page Language="C#" Inherits="CasLogin" CodeFile="CasLogin.cs" %>
<script language="C#" runat="server">
protected void Page_Load(object sender, EventArgs e) {
String directoryId = CasLogin.GetId();
FormsAuthentication.RedirectFromLoginPage(directoryId, false);
}
</script>

错误出现在第一行:

Compiler Error Message: ASPNET: Make sure that the class defined in this code file matches the 'inherits' attribute, and that it extends the correct base class (e.g. Page or UserControl).

如果我改变它

public class CasLogin : System.Web.UI.Page

public class CasLogin : Page

我收到此错误:

Compiler Error Message: CS0246: The type or namespace name 'Page' could not be found (are you missing a using directive or an assembly reference?)

最佳答案

If I change it from public class CasLogin : System.Web.UI.Page to public class CasLogin : Page I get this error

您缺少 Page 类 (System.Web.UI) 的正确 using 语句,因此,当您删除完整限定条件时,编译器无法再找到 Page 类。

您还应该在 Page 指令中完全限定类名,即 Inherits="cheese.pies.org.CasLogin"

<% @Page Language="C#" Inherits="cheese.pies.org.CasLogin" CodeFile="CasLogin.cs" %>

不好

<% @Page Language="C#" Inherits="CasLogin" CodeFile="CasLogin.cs" %>

根据您对缺少 partial 修饰符的评论:

public class CasLogin : System.Web.UI.Page

应该是:

public partial class CasLogin : System.Web.UI.Page

这告诉编译器 CasLogin 类是在多个文件中定义的(Web 表单就是这种情况;设计器文件与代码隐藏文件是分开的)。

如果仍然不起作用,我建议重新创建页面并将所有相关代码复制到其中。 通常 Visual Studio 会自动处理所有这些,这不是问题。

关于C# 继承问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10402995/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com