es posible una aplicacion de consola en Visual Studio se pueda crear y compilar en windows, y luego poder ser utilizada en linux
Por supuesto,
Visual Studio provee soporte para el desarrollo de aplicaciones multiplataforma usando C#, mediante, por ejemplo, la tecnología
.NET Core, también abreviada como "
NET 5", "
NET 6", "
NET 7" y "
NET 8"; las versiones anteriores, de la 1 a la 4, hacen referencia a
.NET Framework, que es una tecnología específica para el sistema operativo Windows.
Para desarrollar una aplicación multiplataforma en
Visual Studio con
.NET Core debes cumplir con ciertos requisitos que pueden pasar por tener que sacrificar la comodidad y la capacidad de poder usar el diseñador de Windows Forms y, por supuesto, no poder utilizar la API de Windows mediante
Platform Invoking. Todo depende de cual sea tu objetivo...
Si el objetivo es desarrollar una aplicación de consola o una web app (
ASP.NET Core), entonces
.NET Core es tu mejor opción.
Si el objetivo es desarrollar una librería de clases, aparte de
.NET Core también puedes considerar la tecnología
.NET Standard para garantizar la compatibilidad de las APIs entre diferentes plataformas, aunque por lo general no deberías tener problemas usando
.NET Core.
A través del asistente de creación de proyecto en Visual Studio, encontrarás las plantillas necesarias para el desarrollo de software multiplataforma con
.NET Core y
.NET Standard usando C#.
Aténtamente,
Elektro.