Как использовать свойства в коде пользовательского веб-элемента управления ASP.NET

Этот код взят из файла .aspx.cs для пользовательского веб-элемента управления. Код ниже дает две ошибки: первый { под public void Button2_Click говорит: "} ожидается". затем последний } в коде говорит: «ожидается определение типа или пространства имен или конец файла». как я могу сделать этот код лучше? и как я могу заставить его работать?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace Tutorial_Examples_1
{
public partial class UserInfoBoxControl : System.Web.UI.UserControl
{
    public void Page_Load(object sender, EventArgs e)
    {

    }

    public void Button2_Click(object sender, EventArgs e)
    {
        private string userName;
        private int userAge;
        private string userCountry;

        public string UserName
        {
            get { return userName; }
            set { userName = value; }
        }

        public int UserAge
        {
            get { return userAge; }
            set { userAge = value; }
        }

        public string UserCountry
        {
            get { return userCountry; }
            set { userCountry = value; }
        }            
    }
}
}

person Community    schedule 25.10.2016    source источник
comment
Это очень похоже на домашнее задание... Потому что ошибок много.   -  person VDWWD    schedule 26.10.2016


Ответы (2)


Вы вкладываете переменные-члены и свойства в тело метода. Это не разрешено в C#. Это должно быть сделано вне этого блока, а вместо этого внутри тела класса.

person uncoder    schedule 25.10.2016
comment
И это должен быть комментарий, а не ответ. - person VDWWD; 26.10.2016

using System.Web.UI;
using System.Web.UI.WebControls;

namespace Tutorial_Examples_1
{
public partial class UserInfoBoxControl : System.Web.UI.UserControl
{

private string userName;
private int userAge;
private string userCountry;

public string UserName
{
     get { return userName; }
     set { userName = value; }
}

public int UserAge
{
     get { return userAge; }
     set { userAge = value; }
}

public string UserCountry
{
     get { return userCountry; }
     set { userCountry = value; }
} 

public void Page_Load(object sender, EventArgs e)
{

}

public void Button2_Click(object sender, EventArgs e)
{

}

}//class


}//namespace

Лучше создать отдельный класс для пользователя, например

public class UserInfo
{
private string userName;
private int userAge;
private string userCountry;

public string UserName
{
     get { return userName; }
     set { userName = value; }
}

public int UserAge
{
     get { return userAge; }
     set { userAge = value; }
}

public string UserCountry
{
     get { return userCountry; }
     set { userCountry = value; }
} 

}


public partial class UserInfoBoxControl : System.Web.UI.UserControl
{

    public void Page_Load(object sender, EventArgs e)
    {

    }

    public void Button2_Click(object sender, EventArgs e)
    {
        UserInfo user = new UserInfo();
    //Do you stuff with user object
    }
}

Надеюсь это поможет!

person Sami    schedule 26.10.2016