【强迫症】编写C#程序时定义属性遇到的问题

在一个类中定义属性时:

        private string adminName;

        public string AdminName
        {
            get { return adminName; }
            set { adminName = value; }
        }

这算比较常规的写法吧。

可是我在阅读开源项目的例子时,见到了这样的写法

                public string AdminName { get; set; }

请问,上面的这种写法正确吗?定义类的属性时,这么用对吗?
与第一中写法有什么区别和联系呀?

对的!在C#中这叫自动属性
快捷键是prop Tab2次

这是简单的属性,但是在属性中有逻辑代码是不可以这样写的
例如:
public int Age
{
get{}
set{}
}
就是错误的,这是可以发现属性并没有对应的字段
终结:

有字段,就不可以使用简单属性

对的!在C#中这叫自动属性
快捷键是prop Tab2次

这是简单的属性,但是在属性中有逻辑代码是不可以这样写的
例如:
public int Age
{
get{}
set{}
}
就是错误的,这是可以发现属性并没有对应的字段
终结:

有字段,就不可以使用简单属性

两种写法都正确,就相当于简写吧

问题解决了。
下面是我通过楼上那位朋友提供的自动属性查找到的,其实下面的这个博客跟楼上朋友说的都是对的,相当于我看了两遍才明白。
搞定了。谢谢朋友们。

http://m.baidu.com/from=1002253n/bd_page_type=1/ssid=0/uid=0/baiduid=A7D787C581F4401474E61DE7D55F3D9B/w=0_10_c%23%E4%B8%AD%E8%87%AA%E5%8A%A8%E5%B1%9E%E6%80%A7/t=zbios/l=3/tc?ref=www_zbios&pu=sz%401320_480%2Ccuid%40liSqt0uL280s82afg8SIugacv8YIuHie_aHliga5Su8KP28C_u2ki_uzvtjRa2fHA%2Ccua%40_a-qi4uq-igBNE6lI5me6NIy2IjUI2f6AqqqB%2Ccut%405tVjOrktHkrpkShJ_h2UIgN0vtyNNmojipQmA%2Cosname%40baiduboxapp%2Cctv%402%2Ccfrom%401013672i%2Ccen%40cuid_cua_cut%2Ccsrc%40app_mainbox_txt%2Cta%40zbios_2_4.4_6_6.9&lid=11951195409380102968&order=1&vit=osres&tj=www_normal_1_0_10_title&m=8&srd=1&cltj=cloud_title&dict=30&title=c%E8%87%AA%E5%8A%A8%E5%B1%9E%E6%80%A7-%E5%91%86%E6%B2%B3%E9%A9%AC-%E5%8D%9A%E5%AE%A2%E5%9B%AD&sec=7479&di=fa04c82614f22df4&bdenc=1&tch=124.0.0.0.0.0&nsrc=IlPT2AEptyoA_yixCFOxXnANedT62v3IEQGG_ytK1DK6mlrte4viZQRAWDzxQynTUS4stmGGe2dYtXLR0WYn7wV2mqxhxmdN78TwdcbqhR_2JRYNcNkk2dq