CS1061:编译错误消息 [英] CS1061: Compilation Error Message
问题描述
我已经在页面上添加了一个linkbutton并在调试时显示错误消息:
i have added a linkbutton to my page and get error when debugging says:
CS1061:"ASP.uilayer_test_aspx"不包含"lbl_Click"的定义,并且找不到扩展方法"lbl_Click"接受类型为"ASP.uilayer_test_aspx"的第一个参数(您是否缺少using指令或程序集参考?)
CS1061: 'ASP.uilayer_test_aspx' does not contain a definition for 'lbl_Click' and no extension method 'lbl_Click' accepting a first argument of type 'ASP.uilayer_test_aspx' could be found (are you missing a using directive or an assembly reference?)
.aspx包含:
<asp:LinkButton ID="lbl" runat="server" OnClick="lbl_Click">LinkButton</asp:LinkButton>
页面指令:
<%@ Page Language="C#" MasterPageFile="~/UILayer/UI.Master" AutoEventWireup="true" CodeBehind="Test.aspx.cs" Inherits="WebApp.UILayer.Test" Title="Untitled Page" %>
.cs包含:
namespace WebApp.UILayer
{
public partial class Test : System.Web.UI.Page
{
private void lbl_Click(object sender, EventArgs e)
{
}
}
}
推荐答案
您必须使 lbl_Click
受保护而不是私有.
You have to make lbl_Click
protected and not private.
这样做的原因是从aspx源创建了一个自己的类,称为 ASP.uilayer_test_aspx
.该类是您的 Test
类的继承.子类不可见私有方法,因此必须对其进行保护.
The reason for this is that an own class, called like ASP.uilayer_test_aspx
is created from the aspx source. This class inherits from your Test
class. Private methods are not visible to child classes, so it has to be protected.
这篇关于CS1061:编译错误消息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!