虚拟目录中的Default.aspx引发CS1061错误

时间:2014-02-28 15:42:17

标签: c# asp.net iis-7.5

我正在使用ASP Web Forms应用程序进行系统测试。我们有两个URL将使用相同的代码,根据URL更改其内容。所以我在IIS中配置了两个虚拟目录以映射到一个物理路径。假设虚拟目录为TTP/Site1TTP/Site2,它们都映射到TTP/SiteCommon

但是,Default.aspx页面引发了CS1061编译错误:

  

CS1061:'ASP.ttp_site1_default_aspx'不包含'btn_login_Click'的定义,并且没有可以找到接受类型'ASP.ttp_site1_default_aspx'的第一个参数的扩展方法'btn_login_Click'(你是否缺少using指令或程序集)引用?)

错误在这一行:

<asp:Button ID="btn_login" runat="server" Text="Log in" OnClick="btn_login_Click" />

我收到TTP / Site2的相同消息,并在同一行。

我查看了Stack Overflow之前的问题,并确认默认中的btn_login_Click 受保护而非私有

有什么想法吗?

每个请求的ETA:

    protected void btn_login_Click(object sender, EventArgs e)
    {
        Response.Redirect("~/login.aspx");

    }

ETA2:

<%@ Page Title="" Language="C#" MasterPageFile="~/main.Master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="RIF.Default1" %>

1 个答案:

答案 0 :(得分:0)

确保您的类名为Default1,并且它位于RIF名称空间中。

此外,如果您使用的是Web站点而不是Web应用程序项目,请将CodeBehind更改为CodeFile。 See MSDN.

<%@ Page Title="" Language="C#" MasterPageFile="~/main.Master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="RIF.Default1" %>