TOP

[C#]初學Class,如何建立一個簡單的Class,以及field,property的差別。



初學者最常遇到的一個狀況,知道怎麼使用別人已經建立好的Class,但不知道該如何自已建立一個新的Class。
該如何建立一個簡單的Class,以及field,property的差別。

1.先建立一個新的UserDataModel.cs。
(1)新增一層UserDetailModel的class,且使用field/欄位的方式。


public class UserDataModel
{
    public class UserDetailModel
    {
        public string account;
        public string firstName;
        public string lastName;
        public DateTime createDate;
        public string createUser;
    }
}


(2)property/屬性的方式。


public UserDataModel
{
    private DateTime _myBirthday


    public DateTime myBirthday
    {
        get
        {
                return _myBirthday;
        }
        set
        {
            if (Value <= DateTime.UtcNow)
           {
              _myBirthday = Value;
           }
           else
           {
              throw new Exception("Birthday Fail.")
           }
        }
    }


}

(3)property/屬性的方式,將資料存在Session內。

    public static string account
    {
        get
        {
            if (HttpContext.Current.Session["account"] == null)
                return string.Empty;
            else
                return HttpContext.Current.Session["account"].ToString();
        }
        set
        {
            HttpContext.Current.Session["account"] = value;
        }
    }

2.如何將資料存入Class內,使用前一定要先New Class。


    protected void Page_Load(object sender, EventArgs e)
    {

       UserDataModel.UserDetail = SetUser ();
    }


    public static UserDataModel.UserDetailModel SetUser ()
    {

        UserDataModel.UserDetailModel myUser = new UserDataModel.UserDetailModel();
        myUser.account = "UserAccount";
        myUser.firstName= "ABC";
        myUser.lastName= "DEF";
        myUser.createDate= "account";
        myUser.createUser= "ABC";
        return myUser;
    }

參考資料:
http://www.allenkuo.com/EBook5/view.aspx?a=1&TreeNodeID=123&id=279
http://www.allenkuo.com/EBook5/view.aspx?a=1&TreeNodeID=123&id=969



0 意見:

張貼留言