1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/snikeguo-cs-script

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

CS-Script

CS-Script — это система скриптов на основе CLR, которая использует C# в качестве языка программирования, совместимого с ECMA.

Это одно из самых зрелых решений для написания скриптов на C#. Оно стало доступно общественности в 2004 году, всего через два года после первого выпуска .NET, и стало первой комплексной платформой для создания скриптов для .NET.

CS-Script поддерживает как размещённое, так и автономное выполнение. Это позволяет использовать движок сценариев в качестве альтернативы PowerShell на чистом C#, а также расширять приложения .NET с помощью скриптов C#, выполняемых во время выполнения размещённым движком сценариев.

С помощью CS-Script можно легко переключать базовую технологию компиляции, не затрагивая кодовую базу. В настоящее время поддерживаются компиляторы Mono, Roslyn и CodeDOM.

CS-Script также предлагает комплексную интеграцию с наиболее распространёнными инструментами разработки:

  • Visual Studio;
  • VSCode;
  • Sublime Text 3;
  • Notepad++.

Он может работать на Win, Linux и Mac и совместим с .NET, Mono и .NET Core.

За долгую историю CS-Script его загрузили только через менеджер плагинов Notepad++ x86 более раз (см. статистику).

Статистика не включает загрузки x64 и загрузки после того, как Notepad++ прекратил поставлять редактор с включённым менеджером плагинов x86.

Для получения подробной информации о CS-Script перейдите в документацию проекта.


Ниже приведён простой пример кода, чтобы дать вам представление о продукте:

Выполнение скрипта из оболочки

Обновление тегов медиафайлов. Обратите внимание, что скрипт использует необязательный бесклассовый макет.

Файл скрипта: mp4_retag.cs

//css_nuget taglib
using System;
using System.IO;

string source = @"\\media-server\tv_shows\Get Smart\Season1";

void main()
{
    foreach (string file in Directory.GetFiles(source, "*.mp4"))
    {
        string episode_name = Path.GetFileNameWithoutExtension(file);

        var mp4 = TagLib.File.Create(file);
        mp4.Tag.Title = episode_name;
        mp4.Save();

        Console.WriteLine(episode_name);
    }
}

Выполните файл сценария непосредственно в командной строке без сборки исполняемой сборки:

C:\Temp>cscs mp4_retag.cs

Размещение движка сценариев

dynamic script = CSScript.LoadCode(
                           @"using System.Windows.Forms;
                             public class Script
                             {
                                 public void SayHello(string greeting)
                                 {
                                     MessageBox.Show(""Greeting: "" + greeting);
                                 }
                             }")
                             .CreateObject("*");
script.SayHello("Hello World!");
//-----------------
var product = CSScript.CreateFunc<int>(@"int Product(int a, int b)
                                         {
                                             return a * b;
``` ```
int result = product(3, 4);
//-----------------
var SayHello = CSScript.LoadMethod(
                        @"using System.Windows.Forms;
                          public static void SayHello(string greeting)
                          {
                              MessageBoxSayHello(greeting);
                              ConsoleSayHello(greeting);
                          }
                          static void MessageBoxSayHello(string greeting)
                          {
                              MessageBox.Show(greeting);
                          }
                          static void ConsoleSayHello(string greeting)
                          {
                              Console.WriteLine(greeting)
                          }")
                         .GetStaticMethod("*.SayHello" , ""); 
SayHello("Hello again!");

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Используйте язык C# для создания скриптового языка. Скорость обгоняет Python на несколько улиц! Кроме того, вы можете использовать все библиотеки .NET и поддерживать MONO! Отлично подходит для педантичных программистов. В отличие от Python здесь есть типы и объявления! Позвольте себе уверенно писать скрипты! Этот код взят с GitHub! Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/snikeguo-cs-script.git
git@api.gitlife.ru:oschina-mirror/snikeguo-cs-script.git
oschina-mirror
snikeguo-cs-script
snikeguo-cs-script
master