解决方法
理论上,是的 – 你当然可以在.Net应用程序中执行此操作,并且有Java / .Net interops.
通常情况下,Java / C#interops是通过P / Invoke或COM执行的 – 对于这类事情来说都非常麻烦,所以实际上这可能不会像你想象的那样整齐地工作.
如果你想这样做,我可能会建议您在C#中编写“脚本引擎”(即C#编译器的包装器),然后通过interops将它暴露给Java域,例如:
public ScriptResult(string Script) { // Implemented in .Net // Script is a string containing the C# code to execute }
然后,您需要仔细考虑C#脚本如何能够访问任何Java-land功能,我想最好的方法是实现一个通过interops调用Java对象的.Net包装类.
在.Net应用程序中使用C#作为脚本语言非常简单 – 有关信息,请参阅:
> Why You Should Use C# For Your Scripting Language
> C# As a Scripting Language in your .NET Applications