随着.NET的原来越开放,不仅仅是开源这么简单了,也意味着.NET程序员要关注越来越多的平台,涵盖.NET Mic Framework, Xamarin,Mono,.NET等等,从windows到linux,mac,从嵌入式到移动设备、PC 、小型机服务器等等复杂的环境,如何让我们的代码在所有的平台上都可以跑就成为一个问题,很难做到你写的应用的代码能够100%的跨平台,这就需要一个工具来帮我们解决这个问题。
《ASP.NET 5系列教程 (一):领读新特性》里面已经提到一个命令行工具API Portability Analyzer, 微软最近又发布了一个Visual Studio 插件.NET Portability Analyzer。它可以非常方便在Visual Studio 中帮你分析代码。Mono有类似的工具 MoMA是一个诞生于2006年的扫描工具。通过它提供的报表可以粗略知道一个项目从.NET迁移过去可能会遇到哪些问题(包含PInvoke检查,未实现方法检查)。它是Xamarin Mobility Scan的前身。
- 下载安装插件 https://visualstudiogallery.msdn.microsoft.com/1177943e-cfb7-4822-a8a6-e56c7905292b
-
设置分析工具检查的平台,通过菜单: Tools - à Options à .NET Portability Analyzer,选择要分析的平台:
- 有2种分析方法进行分析:
-
分析单独的程序集,例如我们分析Autofac 这个程序集,通过菜单项Analyze –> Analyze Assembly Portability,选择一个Autofac.dll 程序集
生成一个报表
下面还给出了建议。
-
分析整个项目,选中项目,右键选择Analyzer—> Analyze Assembly Portability。运行生成的报表如下:
可以下载社区免费版的Visual Studio: http://www.visualstudio.com/free.
相关文章
Leveraging existing code across .NET platforms
Cross-Platform Portable Class Libraries with .NET are Happening