web-dev-qa-db-fra.com

Peut-on exécuter n'importe quelle application c # sur linux

Je développe un serveur de jeux en c #. Le serveur parle aux clients via des sockets et envoie l'octet [] en utilisant un protocole de paquet personnalisé. La question est de savoir si ce logiciel sera spécifique à Windows ou pourra fonctionner sur un serveur Linux. J'ai lu différents articles sur différents forums où les développeurs disent que leur serveur est uniquement sous Windows, certains disent qu'il peut fonctionner sur Linux.

Y a-t-il un facteur spécifique? L'application doit-elle être écrite spécifiquement pour pouvoir s'exécuter sur Linux?

11
Scavs

Pour que le code .NET puisse s'exécuter sur Linux, vous avez besoin d'une version de .NET compatible avec cette plate-forme.

Le .NET complet est uniquement Windows, mais il existe le framework Mono qui fonctionne sous Linux. . NET Core est également porté sur Linux.

Ni Mono ni .NET Core ne prennent en charge l'intégralité de .NET standard. Par exemple, ni vous permettra d'exécuter une application WPF. Donc, tant que votre code est compatible avec l'un des cadres susmentionnés; oui, vous pouvez l'exécuter sous Linux.

Pour votre exemple spécifique, les classes que vous mentionnez doivent être prises en charge, et je ne pense pas que vous aurez du mal à exécuter sous Mono ou .NET Core.

17
BradleyDotNET