Announcing Portable Library Tools 2 Beta for Visual Studio 2010 [Mircea]
Today we are announcing the Beta release of the Portable Library Tools 2 for Visual Studio 2010. This is an update to the first version we released in June 2011. It brings parity with Portable Library Tools in Visual Studio 11 Beta for those platforms supported by Visual Studio 2010. It also adds support for building portable libraries targeting more recent platforms, scoped to those features supported by Visual Studio 2010.
Portable Library Tools allow you to create C# and Visual Basic libraries that may be reused, without recompilation, from .NET projects for a variety of different platforms.
Download the Portable Library Tools Beta 2 today! (requires Visual Studio 2010 SP1)
What’s new?
New Supported APIs
Since the release of the initial CTP, we have received numerous requests for more API feature areas to be supported by the Portable Library Tools. In response to your feedback, we have been able to add support for a number of new feature areas for this release. Here is a summary of what Beta 2 supports, highlighting the additions:
Feature Area |
Silverlight |
Windows Phone |
Metro Style Apps |
.NET Framework |
XBOX 360 |
||||
|
4 |
5 |
7 |
7.1 |
4 |
4.0.3 |
4.5 |
||
Core BCL |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
Core XML |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
LINQ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
|
IQueryable |
√ |
√ |
|
√ |
√ |
√ |
√ |
√ |
|
dynamic keyword support |
√ |
√ |
|
|
√ |
|
|
√ |
|
Core WCF |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
|
Core Networking |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
|
View Models |
√ |
√ |
√ |
√ |
√ |
|
|
√ |
|
Data Annotations |
√ |
√ |
|
|
√ |
|
√ |
√ |
|
XLINQ |
√ |
√ |
√ |
√ |
√ |
|
√ |
√ |
√ |
MEF |
√ |
√ |
|
|
√ |
√ |
√ |
√ |
|
Data Contract Serialization |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
|
XML Serialization |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
|
JSon Serialization |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
|
System.Numerics |
√ |
√ |
|
|
√ |
√ |
√ |
√ |
|
User interface changes
To accommodate for the increased number of platforms and versions supported, we have updated the target platform selection dialog.
The workflow for creating a Portable Library changed slightly, as well. As before, you create a new portable library project by selecting the “Portable Library” template:
However, upon clicking the OK button, you are now prompted with a dialog to select the platforms to target:
The check boxes allow you to enable or disable support for a given platform, while the dropdowns allow you to select the minimum version of that platform you wish to support.
The platform selection dialog is still available In the project property pane after the project is created by clicking the “Change…” button:
In conclusion...
Please let us know what you think - we’d love to hear your feedback!
Comments
Anonymous
May 09, 2012
Yeah this is all kinds of great news :)Anonymous
May 11, 2012
The highlighting confuses me. How can a feature for a platform be both unchecked-- I'm assuming checked equates to present-- and highlighted as newly added?Anonymous
May 12, 2012
Why are Core BCL and Core XML not supported in .NET 4.5? Is it because you haven't gotten around to adding it yet or is the intention to not support it? It would be nice if you filled in the blanks with what is planned and what is not planned.Anonymous
May 14, 2012
@Josh: we highlighted platforms and technologies that were newly added just as a visual guide. The checkmarks give the precise details. @Fred: that's an error on our side, they are supported. We'll correct it - thanks for catching it!Anonymous
May 14, 2012
Is there a possibility to "upgrade" or "convert" an existing library to a portable library?Anonymous
May 31, 2012
Just great.Anonymous
June 08, 2012
@Markus - I'm afraid not. At this point, the workaround is to create a portable library project and add reference to the source files from the other project you intended to convert. Alternatively, you could edit the project file of the initial library to look like a portable library. The easiest would be to look at a blank portable library project file; you'll notice the different TargetFrameworkProfile (set it to Profile2, then you can change it in VS with the project properties dialog) and, at the bottom, the imported targets file.