Monday, September 10, 2018

.NET Portability Analyzer

Когда то использовал автоматический анализатор кода для проверки совместимости .NET приложений с Xamarin платформой. Мое приложение тогда показало 100% совместимость, все таки Mono+GtkSharp. Теперь портируя приложения на .Net Core тоже использую подобный анализатор.

Собрать можно с помощью скрипта

.\build.ps1 -Configuration Debug -Platform AnyCPU

после этого посмотреть установленные на компьютере платформы

.\ApiPort.exe listTargets

Проверить, что требует портирования, задав платформы:

.\ApiPort.exe analyze -f "my.exe" -t ".NET Framework, Version=4.6.2" -t ".Net Core, Version=2.1" -r HTML -o AnalysisReport.html

Еще, есть UI, тем более что WPF уже будет в .NET Core 3.0

Вот какого плана создается отчет

Target type .Net Core,Version=v2.1 .NET Framework,Version=v4.6.2 Recommended changes
Microsoft.AspNetCore.StaticFiles.FileExtensionContentTypeProvider
#ctor
get_Mappings
TryGetContentType(System.String,System.String@)
Microsoft.VisualBasic.Devices.ComputerInfo
#ctor
get_AvailablePhysicalMemory
get_OSFullName
get_TotalPhysicalMemory
System.Configuration.ConfigurationElement Use configuration appropriate for your application model. For portable Framework Components, expose API for configuration on type.
#ctor Use configuration appropriate for your application model. For portable Framework Components, expose API for configuration on type.
get_Item(System.String) Use configuration appropriate for your application model. For portable Framework Components, expose API for configuration on type.
set_Item(System.String,System.Object) Use configuration appropriate for your application model. For portable Framework Components, expose API for configuration on type.
System.Configuration.ConfigurationManager Use configuration appropriate for your application model. For portable Framework Components, expose API for configuration on type.
get_AppSettings Use configuration appropriate for your application model. For portable Framework Components, expose API for configuration on type.
GetSection(System.String) Use configuration appropriate for your application model. For portable Framework Components, expose API for configuration on type.
System.Configuration.ConfigurationPropertyAttribute Use configuration appropriate for your application model. For portable Framework Components, expose API for configuration on type.
#ctor(System.String) Use configuration appropriate for your application model. For portable Framework Components, expose API for configuration on type.
System.Configuration.ConfigurationSection Use configuration appropriate for your application model. For portable Framework Components, expose API for configuration on type.
#ctor Use configuration appropriate for your application model. For portable Framework Components, expose API for configuration on type.

debug magazine archive

  71 jounals still available on issuu with great story of netlabels time.  debug_mag Publisher Publications - Issuu