MEF for Windows 8 Metro和TPL Data Flow迁移到NuGet
openkk 12年前
<p> 微软决定从 .NET 4.5 框架中删除 <a href="/misc/goto?guid=4958344588100206803">MEF for Windows 8 Metro 和 TPL Data Flow</a>。 取而代之的是,他们会作为 NuGet 程序包提供,从而以后做出的改进可以在完整的 .NET 发布周期之外发布。</p> <p> 这个决定延续了微软开发部门中的总体趋势,他们要摆脱庞大的开发周期。 很好的例子就是 ASP.NET MVC。 从 2009 年开始,它已经发布了三个主要版本,并且马上要发布第四个版本。 相比之下,ASP.NET WebForms 只发布了一个版本。 尽管 WebForms 的下一版本包含了大量改进,应该和 MVC 做出改进的同时发布,但是微软还是要等到 Visual Studio 2012 和 .NET 4.5 都就绪了之后再发布。</p> <p> 更复杂的例子是实体框架。 这种产品的核心还是与 .NET 的发布周期绑定在一起。 然而,很多重要的特性,像“代码优先”,也使用 NuGet 在其之外发布了。</p> <p> 使用 NuGet 来发布有很大好处,这让程序库可以使用最初发布时所没有使用的功能。 对于 TPL Dataflow,人们认为它是服务端的应用程序。 然而,现在它“在各处都可以得到支持,包括桌面、服务器和 Metro 样式的 .NET 应用程序”。</p> <p> 好吧,上面的举例可能不完全精确。 <a href="/misc/goto?guid=4958344588925993345">TPL Dataflow 的 NuGet 版本</a>包含了一种许可限制,声称它只能在 Windows 的计算机上使用。 所以,即便是兼容 Mono,你也无法在 Mono 项目中使用它。</p> <p> 另外,<a href="/misc/goto?guid=4958194100490212000">MEF</a> 是开源的项目。 所以,尽管 TPL Dataflow 是可以理解的,但是 <a href="/misc/goto?guid=4958344590456621379">MEF for web and Metro style</a> 也有同样的平台限制就有些奇怪了。 如果在非发布的候选版本中不改变许可,我们就真的会感到奇怪了。</p> <p> <strong>查看英文原文:</strong><a href="/misc/goto?guid=4958344591259291131">MEF for Windows 8 Metro and TPL Data Flow Moved to NuGet</a></p> <div id="come_from"> 来自: <a id="link_source2" href="/misc/goto?guid=4958344592055059347" target="_blank">InfoQ</a> </div>