Я слышал о файлах .cs, но не о .csx файлах. Поиски Google привели меня в корпорацию CSX и другие нежелательные тела. Может ли кто-нибудь дать краткое описание того, что такое CSX файл, и, возможно, основные различия между CSX и CS?
Для чего нужны файлы .CSX С#?
Ответ 1
Это С# Script Файл, введенный с Roslyn:
С# Script Файл (.csx) Поддержка редактирования: CTP представляет концепцию С# Script File. Вы можете создать файл .csx [...]
Вам не нужно иметь все в классе и методе, файл csx похож на собственный метод, и все в файле будет выполняться при запуске. Он также поддерживает некоторые дополнительные директивы (например, #load для загрузки другого script).
Scripting Api, предоставленный в Roslyn, будучи перспективным, имеет некоторые серьезные недостатки:
Для сценариев API требуется настольный .NET Framework 4.6 +.
- Это означает, что это не кросс-платформенный. (но с .NET Core, теперь это должно быть).
- Синтаксис С# на самом деле не Script ориентированный (слишком многословный)
- Директивы, доступные в обязательном порядке, недостаточны для охвата широкого круга CLI (например, PowerShell). Например, нет cd, alias, pwd, ls, exec или т.д..
Существует несколько механизмов сценариев, которые основаны на нем (или в нижней части Roslyn) или, по крайней мере, в том же формате, обеспечивая при этом более сложные директивы. Итак, это означает, что файл csx должен запускаться по одному из следующих:
- Nake (выполняется на .Net Framework и Mono)
- dotnet script (выполняется на .NET Core)
- ScriptCS
Остерегайтесь событий, если они разделяют общую базу, они не являются кросс-совместимыми, поскольку на расширениях, которые они реализуют, нет стандарта.
Ответ 2
Прямо сейчас (2016), .csx
файлы также используются в редакторе онлайн-кода, предоставленном Microsoft.
Например, вы можете полностью разработать приложение из браузера и постоянно развертывать его оттуда. Вот пример бота, созданного с Azure Portal и написанный в CSX через браузер:
Ответ 3
Это script файл, используемый ScriptCS, чтобы вы могли создавать исполняемые файлы без создания файла проекта.
Ответ 4
Это файл Scriptcs http://scriptcs.net/. Он может выполняться с помощью компилятора scriptcs