尝试构建应用程序时出现以下错误:
CS1061:'ASP.mailbox_aspx'不包含'MarkAsRead'的定义,并且没有可以找到接受“ASP.mailbox_aspx”类型的第一个参数的扩展方法'MarkAsRead'(您是否缺少using指令或程序集引用?)
但是一切似乎都应该存在 - 除非有一些我缺少的东西?
HTML:
<button id="markasread" runat="server" class="btn btn-white btn-sm" data-toggle="tooltip" data-placement="top" title="Mark as read" onserverclick="MarkAsRead"><i class="fa fa-exclamation"></i> </button>
C#:
private void MarkAsRead(object sender, EventArgs e)
{
foreach (RepeaterItem aItem in rptInbox.Items)
{
HtmlInputCheckBox chkDisplayTitle = (HtmlInputCheckBox)aItem.FindControl("chkDisplayTitle");
if (chkDisplayTitle.Checked)
{
var messageid = chkDisplayTitle.Value;
}
}
}
答案 0 :(得分:1)
那是因为你的方法是private
: -
protected void MarkAsRead(object sender, EventArgs e)
当你在aspx页面中定义控件时,它被编译成一个类,该类由类后面的代码继承。因此,在您的情况下,它无法找到您在类后面的代码中定义的方法。