Cómo verificar la versión del sistema operativo en tiempo de ejecución, p. Windows o Linux sin utilizar una declaración de compilación condicional

¿Alguien sabe cómo determinar en qué plataforma se ejecuta su código C #, p. si se ejecuta en Linux o Windows para que pueda ejecutar código diferente en tiempo de ejecución.

Tengo una aplicación de Windows C # que quiero construir para apuntar a plataformas Windows y Linux.

Hasta ahora he creado 2 archivos de proyecto que apuntan al mismo conjunto de archivos de código fuente. Luego uso una declaración de compilación condicional de uno de los proyectos llamada LINUX.

Donde hay diferencia en el código real, uso declaraciones codicionales usando la declaración de compilación condicional, por ejemplo,

#if (LINUX)
 ' do something
#endif

¿Hay una mejor manera de hacer esto? Realmente no quiero tener 2 archivos de proyecto.

Gracias por adelantado

Respuestas a la pregunta(5)

Su respuesta a la pregunta