属性的自动实现(Auto-Implemented Properties) - VS2005

4 篇文章 0 订阅

在VS2008中C#实现了属性的自动读取/写入功能。那么这些自动实现的代码在VS2005中如何改写呢?

        首先,更改.sln文件



        把Format Version 10.00 -> Format Version 9.00

            # Visual Studio 2008 -> # Visual Studio 2005



        然后,改写geter/seter

        // VS2008

[csharp]  view plain  copy
  1. public string name { getprivate set; }  

        // VS2005

[csharp]  view plain  copy
  1. private string strName;  
  2. public string name { get { return strName; } private set { this.strName = value; } }  

        最后,改写类的属性

        // 类声明

[csharp]  view plain  copy
  1. public class MyClass  
  2. {  
  3.     public string firstName;  
  4.     public string lastName;  
  5. }  

        // 赋值 - VS2008

[csharp]  view plain  copy
  1. MyClass my = new MyClass() { firstName = "xiao", lastName = "bin" };  

        // 赋值 - VS2005

[csharp]  view plain  copy
  1. MyClass my = new MyClass();  
  2. my.firstName = "xiao";  
  3. my.lastName = "bin";  

    执行结果:



    VS2008(Console Application)

    Program.cs

[csharp]  view plain  copy
  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Linq;  
  4. using System.Text;  
  5.   
  6. namespace testProperties  
  7. {  
  8.     public class MyClass  
  9.     {  
  10.         public string firstName;  
  11.         public string lastName;  
  12.     }  
  13.   
  14.     class Program  
  15.     {  
  16.         public string name { getprivate set; }  
  17.   
  18.         static void Main(string[] args)  
  19.         {  
  20.             string strName = "My Name: ";  
  21.             MyClass my = new MyClass() { firstName = "xiao", lastName = "bin" };  
  22.   
  23.             Program pm = new Program();  
  24.             pm.name = my.firstName + my.lastName;  
  25.             strName += pm.name;  
  26.   
  27.             Console.WriteLine(strName);  
  28.         }  
  29.     }  
  30. }  

    VS2005(Console Application)

    Program.cs

[csharp]  view plain  copy
  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Text;  
  4.   
  5. namespace testProperty  
  6. {  
  7.     public class MyClass  
  8.     {  
  9.         public string firstName;  
  10.         public string lastName;  
  11.     }  
  12.   
  13.     class Program  
  14.     {  
  15.         private string strName;  
  16.         public string name { get { return strName; } private set { this.strName = value; } }  
  17.   
  18.         static void Main(string[] args)  
  19.         {  
  20.             string strName = "My Name: ";  
  21.             MyClass my = new MyClass();  
  22.             my.firstName = "xiao";  
  23.             my.lastName = "bin";  
  24.   
  25.             Program pm = new Program();  
  26.             pm.name = my.firstName + my.lastName;  
  27.             strName += pm.name;  
  28.   
  29.             Console.WriteLine(strName);  
  30.         }  
  31.     }  
  32. }  



参考文章:

    1. Auto-Implemented Properties


版权声明:本文为xiaobin原创文章,未经博主允许不得转载。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值