在属性property做一些简单的验证

开发C#的程序,写到属性property时,我们可以在Set方法中做一些简单的规则验证:

如下面,Insus.NET写一个Age属性,只允许用户输入10以内的数字:

 

 class AA
    {
        private int _Age;

        public int Age
        {
            get { return _Age; }
            set
            {
                if (value > 10)
                {
                    throw new Exception("只允许10岁以下的小朋友参加。"); 
                }
                _Age = value;
            }
        }
    }
Source Code



前端,我们只管使用try... catch...来实现抛出异常:



 Console.Write("请填入你的年龄: ");
            AA obj = new AA();            
            obj.Age = Convert.ToInt32(Console.ReadLine());
            try
            {
                Console.WriteLine("你的年龄是: " + obj.Age);
            }
            catch(Exception ex)
            {
                Console.WriteLine(ex.Message);
            }         
Source Code


按Ctrl + F5之后:
输入小于10的数字,如7,然后按回车:



再次按Ctrl + F5,然后输入大于10的数字,如11,控制台将显示如下:

 

posted @ 2017-12-05 16:11  Insus.NET  阅读(381)  评论(0编辑  收藏  举报