Ориентация на несколько сред выполнения при публикации приложения.NET Core

Я хочу создать автономное веб-приложение с использованием.NET Core. Я хочу настроить таргетинг на любую версию Windows, и у меня есть это project.json:

"runtimes": {
  "win10-x64": { },
  "win8-x64": { },
  "win7-x64": { }
}

Когда я бегу dotnet publish --runtime win10-x64 Я могу указать только одну среду выполнения для публикации за раз. Затем мне нужно сохранить три копии моих двоичных файлов.

Можно ли опубликовать мое приложение для всех трех сред выполнения и скопировать эту папку как полностью автономное приложение?

1 ответ

Решение

Когда вы создаете автономное приложение, оно содержит все зависимости, необходимые для его запуска. Насколько я могу судить, единственное различие между публикацией в различных версиях Windows заключается в том, что для более старых версий должны быть включены некоторые зависимости, встроенные в более новые версии.

Это означает, что если вы хотите иметь одну версию автономного приложения, которая работает во всех поддерживаемых версиях Windows, вы можете: просто использовать самую старую версию Windows (win7-x64).

Тот же подход, вероятно, не будет работать в Linux, поскольку Linux обычно не поддерживает двоичную совместимость между версиями.

Другие вопросы по тегам