我有一个名为 prequal.aspx 的 asp.net 页面,代码隐藏为 prequal.aspx.cs。有用。我想将此页面中的每个客户端代码分离到它们自己的部分文件中(以减少以后错误修改错误的机会。)两个 .cs 文件都是这样开始的:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
public partial class prequal : System.Web.UI.Page
{
当我将其中一个客户端代码放入其自己的文件中时,它可以正常编译,但是当我尝试查看页面时出现以下错误:
CS1061:“ASP.prequal_aspx”不包含“lnkLanguage_Click”的定义,并且找不到接受“ASP.prequal_aspx”类型的第一个参数的扩展方法“lnkLanguage_Click”(您是否缺少 using 指令或程序集引用?)
prequal.aspx 有这个:
<asp:LinkButton id="lnkLanguage" onclick="lnkLanguage_Click" runat="server" CausesValidation="False">English / En Español</asp:LinkButton>
prequal.aspx.cs 有这个:
protected void lnkLanguage_Click()
{
// alternate preferred language
if (Session["lang"].ToString() == "spa")
{
Session["lang"] = "eng";
}
else
{
Session["lang"] = "spa";
}
populateQuestions();
}
populateQuestions() 将调用 prequal.aspx.cs 中的其他代码,后者调用 prequal-client1.aspx.cs 中的代码。代码在我拆分之前有效,所以我会错误地创建单独的部分类文件吗?还是我还不知道的其他问题?