编程语言
首页 > 编程语言> > Visual Studio 2008 vs 2005或C#3.0与C#2.0有什么新内容?

Visual Studio 2008 vs 2005或C#3.0与C#2.0有什么新内容?

作者:互联网

我正在浏览Hidden Features of C#的问题,并认为我会尝试一个我不熟悉的功能.不幸的是我使用的是Visual Studio 2005,稍后会介绍相关功能. C#3.0(Visual Studio 2008)与C#2.0(Visual Studio 2005)中的新功能是否有很好的列表?

解决方法:

这不是一个全面的列表,但这些是我最喜欢的C#3.0的一些新功能:

新型初始化器.而不是这样说:

Person person = new Person();
person.Name = "John Smith";

我可以这样说:

Person person = new Person() { Name = "John Smith" };

同样,我可以初始化实现IEnumerable的类型,而不是单独添加项目:

List<string> list = new List<string> { "foo", "bar" };  

lambda表达式的新语法也很好.而不是输入:

people.Where(delegate(person) { return person.Age >= 21;);

我可以输入:

people.Where(person => person.Age >= 21 );

您还可以将扩展方法编写为内置类型:

public static class StringUtilities
{
    public static string Pluralize(this word)
    {
       ...
    }
}

这允许这样的事情:

string word = "person";
word.Pluralize(); // Returns "people"

最后.匿名类型.因此,您可以动态创建匿名类,如下所示:

var book = new { Title: "...", Cost: "..." };

标签:c,visual-studio-2008,net-2-0,visual-studio-2005,net-3-0
来源: https://codeday.me/bug/20190717/1485846.html