У меня есть библиотека C #, которую я хочу портировать с .NET Framework на .NET Core.Поэтому я запустил «Анализатор переносимости» в Visual Studio, и он пометил несколько неподдерживаемых вещей, с которыми я столкнулся.Но я был удивлен некоторыми вещами, которые он сделал , а не , в том числе связанными с реестром (это всего лишь пример - я хочу, чтобы мой вопрос был шире, чем просто реестр).
Я думал, что всегда ранее читал, что реестр - это одна из вещей, которая не поддерживается на платформах, отличных от Windows.Поэтому я подумал, что, возможно, анализатор переносимости ошибался.Но затем я зашел на сайт Microsoft и посмотрел некоторые вещи, связанные с реестром, которые меня удивили, и обнаружил, что они включены в .NET Core.Например:
Microsoft.Win32.Registry, .NET Core 2.1
Но я подумал, что основной идеей .NET Core была кросс-платформенная реализациястандарта .NET, и такие вещи, как реестр, будут не в .NET Core, а в «.NET Core плюс расширения платформы» (если есть).Поэтому я явно что-то здесь неправильно понимаю.
Возможно, функции реализованы, но будут просто генерировать исключения в ОС, отличных от Windows?Или быть по существу неоперативным?Если что-то подобное имеет место, как я могу определить, будет ли библиотека «действительно» работать на других платформах (если не считать явных проб и ошибок)?Я думал, что в этом весь смысл анализатора переносимости.