1

我正在尝试从一个类访问另一个类。我试图从这个问题中得到帮助,但它是在其他方面。我有一个基类如下:

public class BasePage : System.Web.UI.Page
{
    public int MemberUserId
    {
        get
        {
            MembershipUser user = Membership.GetUser();
            if (user != null)
            {
                string memberUserId = user.ProviderUserKey.ToString();
                CustomerBL clientsBL = new CustomerBL ();
                Customers customer = CustomerBL .GetCustomer(memberUserId);
                int customerId = customer .CustomerId;
                return customerId;
            }
            return 0;
        }
  }

}

我想让 customerId 进入这个类,如下所示:

public partial class showCustomer : BasePage
{ 
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!this.IsPostBack)
        {
            LoadCustomerProfile();
        }
    }
    LoadCustomerProfile()
    {
       BasePage basePage;
       int customerId = basePage.customerId; //intellisense is not showing option of customerId
    }
}

当我输入 basePage.customerId 时,intellisense 不显示 customerId 并在我强制输入时出错。如果有人帮助我,我会很高兴的。:)

4

2 回答 2

4

您尚未创建customerId属性。您已经创建了一个MemberUserId属性。

也就是说,您的代码仍然无效,因为您已声明basePage局部变量,但尚未为其赋值。你确定你不只是想要:

int customerId = MemberUserId;

即问this

于 2013-11-05T13:32:19.460 回答
4

首先不要让 BasePage 变量,其次你可以访问 MemberUserId 而不是 customerId

LoadCustomerProfile()
{
   int customerId = this.MemberUserId; //this used for clarification
}

当然,您可以创建其他名为 BasePage 的字段customerId并在 showCustomer 页面中使用它。

我认为您正在尝试访问 MemberUserId ,因为它在这里返回 customerId :

        int customerId = customer .CustomerId;
        return customerId;
于 2013-11-05T13:32:26.200 回答