нацеливание на различные платформы .NET и рекомендации по версиям .NET Standard для общих библиотек - PullRequest
0 голосов
/ 21 марта 2019

Я ознакомился с небольшим количеством библиотек с открытым исходным кодом .Net, предназначенных для общего пользования, и очень боялся изменчивости и различий, на что все это может быть ориентировано.

Я понимаю общее требование переносимости. Следовательно, я могу полностью понять, что хорошо ориентироваться на как можно меньшую версию .NET Standard. Поэтому я понимаю, что авторы библиотек выбрали одну минимальную версию .NET Standard

Но библиотеки часто нацелены на различные определенные .NET-стандарты и платформы .NET и также имеют тенденцию нацеливаться на недавно самый высокий .NET Standard 2.0 (например, различные цели в serilog и особенно разные цели сравнения некоторых библиотек плагинов Serilog) Есть ли для этого конкретные или общие причины? (а как насчет .NET Standard 2.1?) (ну, я вижу только одну распространенную причину использования более нового API из-за лучшей производительности / безопасности)

Каковы конкретные рекомендации для таргетинга полной платформы .NET 4.5 (.x) - .NET 4.7 (.x) - насколько она подходит (например, привлекательна для потребителей) для этой цели? И подходит ли она для любой конкретной версии, например, например, .NET 4.7.2?

Аналогично предыдущему вопросу - как насчет .NET Core (или мира Mono)?

Понятно, на самом деле есть много вопросов, если на них трудно ответить, пожалуйста, не могли бы вы поделиться своим конкретным опытом / мнением, которое может навести на него порядок?

В последнее время у нас был небольшой опыт выхода из старой версии .NET 3.5 (из-за работы со старой SharePoint 2010) Я решил создать другую ветку с другим проектом (может быть, новым sdk), предназначенным только для .NET 3.5 и использующим некоторые библиотеки поддержки .NET 3.5, такие как AsyncBridge , StringInterpolationBridgeStrong , ValueTuple , ... и создание для него специализированного пакета NuGet.

...