Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VisualStudio2008与2005或C#3.0与C#2.0的新功能是什么?_C#_Visual Studio 2008_Visual Studio 2005_.net 2.0_.net 3.0 - Fatal编程技术网

VisualStudio2008与2005或C#3.0与C#2.0的新功能是什么?

VisualStudio2008与2005或C#3.0与C#2.0的新功能是什么?,c#,visual-studio-2008,visual-studio-2005,.net-2.0,.net-3.0,C#,Visual Studio 2008,Visual Studio 2005,.net 2.0,.net 3.0,我浏览了一下问题,想试试我不熟悉的一个功能。不幸的是,我使用的是VisualStudio2005,这个功能后来才被引入。在C#3.0(VisualStudio2008)和C#2.0(VisualStudio2005)中,有没有一个好的新特性列表 这里有一个指向.NET 3.0上MS页面的链接: …在与2008年的比赛中,C#: 我还没有尝试过VS2008和.NET3.0,但我认为这些链接可能会有所帮助;) 这不是一个全面的列表,但以下是我最喜欢的C#3.0的一些新功能: 新型初始值设定项。不要这

我浏览了一下问题,想试试我不熟悉的一个功能。不幸的是,我使用的是VisualStudio2005,这个功能后来才被引入。在C#3.0(VisualStudio2008)和C#2.0(VisualStudio2005)中,有没有一个好的新特性列表

这里有一个指向.NET 3.0上MS页面的链接: …在与2008年的比赛中,C#:


我还没有尝试过VS2008和.NET3.0,但我认为这些链接可能会有所帮助;)

这不是一个全面的列表,但以下是我最喜欢的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" };  
string word = "person";
word.Pluralize(); // Returns "people"
var book = new { Title: "...", Cost: "..." };
我可以键入以下内容:

people.Where(person => person.Age >= 21 );
还可以将扩展方法写入内置类型:

public static class StringUtilities
{
    public static string Pluralize(this word)
    {
       ...
    }
}
这允许类似这样的情况:

List<string> list = new List<string> { "foo", "bar" };  
string word = "person";
word.Pluralize(); // Returns "people"
var book = new { Title: "...", Cost: "..." };
最后。匿名类型。因此,您可以动态创建匿名类,如下所示:

List<string> list = new List<string> { "foo", "bar" };  
string word = "person";
word.Pluralize(); // Returns "people"
var book = new { Title: "...", Cost: "..." };

VisualStudio2008的一个未知但强大的功能是。T4是Visual Studio 2008中内置的代码生成器


查看博客帖子。这篇文章是在VisualStudio2008和.NET3.5发布时写的。这篇文章包含了许多有关VisualStudio2008和C#3.0新功能的链接

我喜欢的几个功能:

  • VS2008支持针对不同版本的.NET framework,因此您可以针对2.0、3.0或3.5

  • 自动属性很好

例如:

public int Id { get; set; }
而不是:

private int _id;
public int Id {
    get { return _id; }
    set { _id = value; }
}

多目标支援。您可以全部从一个IDE构建.NET 2->.NET 3.5。

可以说,您也可以通过使用VS 2005中的代码片段获得自动属性。