是否有将现有.NET类库转换为可移植库的指南?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (12)

我有一些类库存在一些不重要的现有代码。类库目前的目标是.NET 4.0。有没有关于如何将这些库转换为可移植库的指导?从查看.csproj,看起来并不存在很多差异:

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets" />

<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>

尝试将现有的类库转换为便携式库是好的还是坏主意?

提问于
用户回答回答于

我们还将现有的库转换为便携式库,并且工作正常。必须修改项目文件。替换以下行:

<Import Project="..." />

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets" />

在PropertyGroup标签内添加以下行

<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>

并从AssemblyInfo.cs文件中删除以下行

[assembly: ComVisible(false)]
[assembly: Guid("...")]

之后,Visual Studio应该在项目Property页面中向显示Tab页面“Library”,可以更改便携式库的目标框架。

用户回答回答于

我创建了一个Visual Studio扩展来自动执行此操作。只需在Visual Studio> 2012的扩展中搜索“ convert to pcl

源代码也在Github上提供。

扫码关注云+社区