![.net.3.5sp1](https://i-blog.csdnimg.cn/blog_migrate/1dcf99af65456adbb11f0a2224a7f429.png)
.net.3.5sp1
The Beta of .NET 3.5 and VS2008 SP1 is out. I'm sure everyone is blogging the heck out of it, so I'll try to add my own specific kind of value. There's fixes, many improvements (some subtle, some dramatic), and some new technology.
.NET 3.5和VS2008 SP1的Beta版已经发布。 我敢肯定,每个人都在为此写博客,所以我将尝试添加自己的特定价值。 有修复程序,许多改进(有些微妙,有些戏剧性)和一些新技术。
您应该害怕此(测试版)版本吗? (Should You Fear This (Beta) Release?)
Maybe a little bit. Don't be afraid of the new assemblies or the bug fixes, I have found them to be very good and have no stability problems, but this Service Pack Installer might cause you some trouble in this beta, especially if you already have beta stuff installed over the top of VS2008RTM (the original version). It'll be correct when it releases later this summer.
可能有点。 不要担心新的程序集或错误修复,我发现它们非常好并且没有稳定性问题,但是此Service Pack安装程序可能会在此Beta中给您带来一些麻烦,尤其是如果您已经安装了Beta版的东西VS2008RTM(原始版本)的顶部。 它将在今年夏天晚些时候发布时是正确的。
Now, if you're going to decide to install a Beta of a Service Pack, do read the ReadMe and ScottGu's post. Go ahead, I'll wait here. OK, if you're already running some beta stuff, like the Silverlight Tools for Visual Studio, you'll want to uninstall that FIRST, otherwise you'll get an error and be upset. This will also be figured out when the SP actually releases, but be warned.
现在,如果您决定安装Service Pack Beta,请阅读ReadMe和ScottGu的文章。 来吧,我在这里等。 好的,如果您已经在运行一些Beta版的东西,例如适用于Visual Studio的Silverlight工具,则需要先卸载该软件,否则会出现错误并感到不高兴。 当SP实际发布时也会指出这一点,但会予以警告。
In this release, I have found the Progress Bar is wonky on XP and 2k3. It might say failed, and then succeed. Watch for the final message, not the bar. This will be fixed. Be aware also that it can be a long-ass install so get a coffee and pillow.
在此发行版中,我发现进度栏在XP和2k3上不方便。 可能会说失败,然后成功。 注意最后的信息,而不是栏。 这将得到解决。 另请注意,它可能是个笨拙的安装,因此请购买咖啡和枕头。
On the developer side, this is much more than just a "tightening of the screws" release, as it also kind of breaks a few rules and introduces some new stuff I've been personally waiting for.
在开发人员方面,这不仅仅是“拧紧螺丝”的发布,它还打破了一些规则,并介绍了我个人一直在等待的一些新东西。
什么是新的? (What's New?)
ASP.NET Dynamic Data, ADO.NET Data Services ("Astoria"), ADO.NET Entity Framework (LINQ to Entities) are all additive. ScottGu has an extensive post detailing all the interesting bits.
ASP.NET动态数据, ADO.NET数据服务(“ Astoria”) , ADO.NET实体框架(LINQ to Entities)都是可添加的。 ScottGu有一篇广泛的文章,详细介绍了所有有趣的部分。
Here's my explanation on ASP.NET Dynamic Data and why you might care. I've been doing talks around on ADO.NET Data Services, sharing my thoughts on how its RESTfulness relates to ASMX/SCF Web Services and WS-*.*, and I'm going to dig deeper into it this year because I think it's pretty sweet, especially if Ayende and I (mostly him) get it running over NHibernate. The ADO.NET Entity Framework can be plugged in underneath both ASP.NET Dynamic Data and ADO.NET Data Services, so taken as a whole, the data story is starting to be a lot clearer and more useful and I'm continuing to work/push for all this stuff over POCO (Plain ol' CLR Objects) whenever possible and/or appropriate.
这是我对ASP.NET动态数据的解释以及您可能会关心的原因。 我一直在围绕ADO.NET数据服务进行讨论,就其RESTfulness与ASMX / SCF Web服务和WS-*。*的关系分享我的想法,今年我将对此进行更深入的研究,因为我认为这非常好,特别是如果我和Ayende (主要是他)让它在NHibernate上运行。 可以将ADO.NET实体框架插入ASP.NET动态数据和ADO.NET数据服务的下方,因此从整体上看,数据故事变得更加清晰和有用,我将继续工作/在可能和/或适当的情况下,将所有这些东西推送到POCO(普通CLR对象)上。
For this release I've personally recorded seven (whew!) How-To Videos on ASP.NET Dynamic Data and the Dynamic Data Samples can be downloaded here. They videos and samples are short, sweet and to the point. I'm also hoping to do more integration-style videos showing all this stuff working together in something of a larger context.
对于此版本,我已经在ASP.NET动态数据上亲自录制了七个(操作方法!)视频,并且可以在此处下载动态数据示例。 他们的视频和样本简短,生动,重点突出。 我也希望做更多的集成式视频,这些视频在更大的环境中展示所有这些东西。
There's also a bunch of fixes like VS2008 starts faster and the IDE is snappier in spots, the WPF Designers are beefed up, and a bunch of editor/designer bugs have been squashed.
还有很多修复程序,例如VS2008的启动速度更快,IDE更加抢眼,WPF设计器得到了增强,并且编辑器/设计器的错误也有所减少。
杜德,别惹我GAC! (Don't Mess With My GAC, Dude!)
UPDATE: Patrick Smacchia, who certainly knows his product better than I, has posted a follow up with more detailed information about what's changed in .NET 3.5 SP1.
更新:肯定比我更了解他的产品的Patrick Smacchia发布了有关.NET 3.5 SP1中发生了什么变化的更详细的信息的后续信息。
On the .NET 3.5 side of things, since this is an SP (Service Pack), yes, some stuff goes in your GAC and gets changed. However, the changes are completely additive. That means if an API's method signature has changed, that's a bug that we need to fix. It will be a fully compatible service pack release. It shouldn't break any of your existing code.
在.NET 3.5方面,由于这是一个SP(Service Pack),是的,GAC中有一些东西会被更改。 但是,这些变化是完全相加的。 这意味着,如果API的方法签名已更改,则这是我们需要修复的错误。 这将是一个完全兼容的Service Pack版本。 它不应破坏您现有的任何代码。
There's roughly 50 new or modified types throughout or about 80 to 100 if you count Dynamic Data. On the WPF side, there's a bunch of new stuff in System.Windows.Effects that will make WPF people happy. There's a new WebBrowserControl in System.Windows.Controls that's like "whew! about time!" as well as new DataBinding support in System.Windows.Data.
整个过程中大约有50种新的或修改的类型,如果算上动态数据,则大约为80到100。 在WPF方面,System.Windows.Effects中的许多新内容将使WPF感到高兴。 System.Windows.Controls中有一个新的WebBrowserControl,就像“快!时间到了!”。 以及System.Windows.Data中的新DataBinding支持。
When folks tell me that things have changed, I personally don't always take their word for it, and would rather dig in and find out for myself what's changed in what assemblies.
当人们告诉我事情发生了变化时,我个人并不总是恪守承诺,而是愿意亲自挖掘并找出在哪些装配中发生了什么变化。
As far as I know there are four major tools for doing Assembly Differences (some have been added since I blogged about Assembly Differences last year):
据我所知,有四种主要的工具可以用来进行程序集差异(自从我去年写关于程序集差异的博客以来,已经添加了一些工具):
Libcheck - Over three years old, obscure, command-line, confusing, but still useful. I used this when diffing .NET 2.0 and 3.5 a while back.
Libcheck -已有3年以上历史了,晦涩难懂,命令行,令人困惑,但仍然有用。 我在比较.NET 2.0和3.5时使用了此功能。
Framework Design Studio - A recent tool by Krzysztof Cwalina, a personal hero of mine, along with his helpers Hongping Lim and David Fowler, it has both a GUI and a command-line option.
Framework Design Studio-我的个人英雄Krzysztof Cwalina的最新工具,以及他的助手Hongping Lim和David Fowler,同时具有GUI和命令行选项。
BitDiffer - This new tool from Greg Ennis is very polished and includes both a GUI and Command Line version. If it supported drag-and-drop it'd be even better. Unfortunately it crashed while I was trying to diff these assemblies.
BitDiffer-格雷格·恩尼斯(Greg Ennis)的新工具非常精致,包括GUI和命令行版本。 如果它支持拖放,那就更好了。 不幸的是,当我尝试区分这些程序集时它崩溃了。
NDepend - Last, but not least, a favorite tool of mine that I've blogged about and podcast about has been dramatically updated to do Assembly Diffs as well in a very cool way. The tool is very polished and lets you compare projects, dlls, supports drag and drop and is generally polished and wonderful, so I ended up using this tool.
NDepend-最后但并非最不重要的一点是,我在博客和播客上喜欢的我最喜欢的工具已进行了显着更新,以非常酷的方式进行了Assembly Diffs。 该工具非常精致,可以让您比较项目,dll,支持拖放,并且通常非常精致,因此我最终使用了该工具。
So, Libcheck is frustrating, FDS is close, but only creates a text-based report on what's changed, BitDiffer crashed, and while NDepend does have some weird painting issues, but I was able to create this diagram with NDepend:
因此,Libcheck令人沮丧,FDS关闭了,但是仅创建了有关更改的基于文本的报告,BitDiffer崩溃了,尽管NDepend确实存在一些奇怪的绘画问题,但是我能够使用NDepend创建此图:
Here's a close up (you can get the whole picture by clicking on it). In this example I was hovering over a method that was blue, and got a tooltip indicating that a method has changed in that type.
这是特写(您可以通过单击获得整个图片)。 在此示例中,我将鼠标悬停在蓝色的方法上,并获得了一个工具提示,指示该方法在该类型中已更改。
I created the graphic by getting the DLLs from the GAC on a .NET 3.5 machine and the DLLs from a .NET 3.5 SP1 machine. Then I put them in two different folders on a machine that *did not have .NET 3.5 on it* to avoid any wackiness. Then I ran this Code Query Language (CQL) query:
我通过从.NET 3.5计算机上的GAC获取DLL和从.NET 3.5 SP1计算机上获取DLL来创建图形。 然后,我将它们放在*没有.NET 3.5的计算机上的两个不同文件夹中,以避免任何麻烦。 然后,我运行此代码查询语言(CQL)查询:
SELECT METHODS WHERE CodeWasChanged
CodeWasChanged的选择方法
The results of that query were displayed in a number of ways, the most interesting one being the Metrics View. I set the metric to show the # of methods. In this example, 1 method = 104 pixels. Blue methods are CHANGED methods. Then I took 2 screenshots while scrolling horizontally and stitched them together in Paint.NET.
该查询的结果以多种方式显示,最有趣的一种是“度量标准视图”。 我设置度量以显示方法的数量。 在此示例中,1个方法= 104像素。 蓝色方法是CHANGED方法。 然后,我在水平滚动时拍摄了2个屏幕截图,并在Paint.NET中将它们缝合在一起。
You'll see when you look at the diagram that there's some fixes here and there, but from a visual 20,000 foot view, perspective, nothing major that looks like more than bug fixes or smells of a systemic issue. Focusing on the Bug Fixes, it's onesy-twosy, bug fixes within a method here and there. The complete list of fixes is here and here.
当您查看该图时,会看到这里到处都有一些修复,但是从20,000英尺的可视角度来看,没有什么比漏洞修复或系统性问题更重要的了。 着眼于错误修复,这是一个单一的地方,这里和那里的方法中的错误修复。 修复程序的完整列表在此处和此处。
BTW: I'm a huge NDepend fan, but I'm not associated with company at all, other than being a fanboy.
顺便说一句:我是NDepend的忠实拥护者,但除了是一名狂热粉丝外,我与公司完全无关。
我的结论 (My Conclusion)
Now that you've been both educated and warned, if you're not willing to wait a bit, you can download the VS2008 SP1 BETA here. Remember, this is a BETA of a Service Pack, so I'm personally continuing to install only on Virtual Machines that have VS2008 RTM.
现在,您已经受过教育和警告,如果您不愿意等待,可以在此处下载VS2008 SP1 BETA 。 请记住,这是Service Pack的测试版,因此我个人将继续仅在具有VS2008 RTM的虚拟机上安装。
If you have anything Beta that's layered on top of VS2008, like the Silverlight Tools, or something like that, back those off first, before installing this SP, and again, read the readme, as most known to-be-fixed issues are called out there already.
如果您拥有在VS2008之上分层的Beta(例如Silverlight工具)之类的东西,请在安装此SP之前先将其关闭,然后再阅读自述文件,因为大多数已知的已解决问题称为已经在那里。
As ScottGu says:
正如ScottGu所说:
"It will be a fully compatible service pack release. We plan to ship the final release of both .NET 3.5 SP1 and VS 2008 SP1 this summer as free updates. "
“它将是一个完全兼容的Service Pack版本。我们计划在今年夏天发布.NET 3.5 SP1和VS 2008 SP1的最终版本作为免费更新。”
So I'm feeling good about the final release later this year. But, for this beta, I don't want to take any chances with installer issues so it just seems prudent that I keep my primary machine on the initial version of VS2008/.NET3.5 until this SP1 is released. Have fun!
因此,我对今年晚些时候发布的最终版本感到满意。 但是,对于此Beta版,我不想冒险遇到安装程序问题,因此,谨慎地选择在发布此SP1之前将我的主计算机保留在VS2008 / .NET3.5的初始版本中。 玩得开心!
Related Links
相关链接
VS2008 and .NET Framework 3.5 SP1 (Beta) COMBINED
VS2008和.NET Framework 3.5 SP1(Beta)组合
Exiting the Zone of Pain with NDepend and my Podcast on NDepend
翻译自: https://www.hanselman.com/blog/vs2008-and-net-35-sp1-beta-should-you-fear-this-release
.net.3.5sp1