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

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

        首先,更改.sln文件



        把Format Version 10.00 -> Format Version 9.00

            # Visual Studio 2008 -> # Visual Studio 2005



        然后,改写geter/seter

        // VS2008

public string name { get; private set; }

        // VS2005

 private string strName;
 public string name { get { return strName; } private set { this.strName = value; } }

        最后,改写类的属性

        // 类声明

    public class MyClass
    {
        public string firstName;
        public string lastName;
    }

        // 赋值 - VS2008

MyClass my = new MyClass() { firstName = "xiao", lastName = "bin" };

        // 赋值 - VS2005

            MyClass my = new MyClass();
            my.firstName = "xiao";
            my.lastName = "bin";

    执行结果:

属性的自动实现(Auto-Implemented Properties) - VS2005_第1张图片


    VS2008(Console Application)

    Program.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace testProperties
{
    public class MyClass
    {
        public string firstName;
        public string lastName;
    }

    class Program
    {
        public string name { get; private set; }

        static void Main(string[] args)
        {
            string strName = "My Name: ";
            MyClass my = new MyClass() { firstName = "xiao", lastName = "bin" };

            Program pm = new Program();
            pm.name = my.firstName + my.lastName;
            strName += pm.name;

            Console.WriteLine(strName);
        }
    }
}

    VS2005(Console Application)

    Program.cs

using System;
using System.Collections.Generic;
using System.Text;

namespace testProperty
{
    public class MyClass
    {
        public string firstName;
        public string lastName;
    }

    class Program
    {
        private string strName;
        public string name { get { return strName; } private set { this.strName = value; } }

        static void Main(string[] args)
        {
            string strName = "My Name: ";
            MyClass my = new MyClass();
            my.firstName = "xiao";
            my.lastName = "bin";

            Program pm = new Program();
            pm.name = my.firstName + my.lastName;
            strName += pm.name;

            Console.WriteLine(strName);
        }
    }
}



参考文章:

    1. Auto-Implemented Properties


你可能感兴趣的:(properties)