複雑なリッチ デスクトップ アプリケーションを作成しており、レポート形式に柔軟性を持たせる必要があるため、オブジェクト モデルをスクリプト言語に公開するだけでよいと考えました。それがVBA(これはまだオプションです)を意味する時でしたが、マネージコードの派生物であるVSTA(私は思う)はつるに枯れたようです.
Windows .NET の埋め込みスクリプト言語として、現在最も適しているのはどれですか?
CSScriptを使用して驚くべき結果が得られました。スクリプト化可能なアプリでバインディングやその他の低レベルの作業を行う必要が大幅に削減されました。
PowerShell エンジンは、アプリケーションに簡単に埋め込んでスクリプト化できるように設計されています。実際、PowerShell CLI はエンジンへの単なるテキスト ベースのインターフェイスです。
編集: https://devblogs.microsoft.com/powershell/making-applications-scriptable-via-powershell/を参照してください。
ブー言語。
私が選んだスクリプト言語は、最近はLuaです。小さく、高速で、クリーンで、完全に文書化され、十分にサポートされており、優れたコミュニティがあり、業界の多くの大企業(Adobe、Blizzard、EA Games)で使用されており、試してみる価値があります。
.NET言語で使用するには、LuaInterfaceプロジェクトが必要なすべてを提供します。
C#を試してみませんか?Monoには、特にC#を動的に評価するための素晴らしい新しいプロジェクトがあります。
IronPython にもう 1 票。組み込みは簡単で、.Net クラスとの相互運用は簡単です。そして、それは Python です。
上記のIronRuby。C# プログラマーとして私にとって興味深いプロジェクトは、Mono での C# Eval サポートです。しかし、まだ利用できません (Mono 2.2 の一部になる予定です)。
私が現在維持しているS#を提案するかもしれません。C# で記述され、.NET アプリケーション用に設計されたオープン ソース プロジェクトです。
当初 (2007 年から 2009 年) はhttp://www.codeplex.com/scriptdotnetでホストされていましたが、最近 github に移動されました。
私は以前にLuaを使用しました。Delphiアプリではありますが、多くのものに埋め込むことができます。これは、AdobeのPhotoshopLightroomで使用されています。
私は C# 自体でスクリプトを作成するのが好きです。現在、2013 年には C# スクリプトのサポートが充実しており、そのためのライブラリがますます利用可能になっています。
Mono はC# コードのスクリプト作成を強力にサポートしており、アプリケーションに を含めるだけで .NET で使用できMono.CSharp.dll
ます。私が作成した C# スクリプト アプリケーションについては、CShellを参照してください。
また、Microsoft のRoslynの「ScriptEngine」もチェックしてください。ただし、これは CTP のみです。
すでに述べたように、CS-Scriptもかなり前から存在しています。
私はまだこれを試したことはありませんが、かなりクールに見えます:
クライアント用のプラグインを作成し、VBA が Office に対して行うように機能する C# コードをモジュールに記述できるようにしました。