我需要它,但不想重新发明热水。
通过示例提问,语法尽可能的例子:
.net> load myLibrary.dll
myLibrary.dll loaded
.net> Person p "John" "Doo" 32
Instance of myLibrary.Person created (p)
.net> print p.Age
32
所以我正在寻找一个命令行界面来访问程序集的公共方法和属性。 (在此示例中,调用了人员的Ctor(字符串,字符串,整数),之后将属性Age打印到控制台。)
虽然我对任何解决方案都很满意,但
有什么想法吗?
更新:如果我找不到一个好的解决方案,我会亲自编程,任何有兴趣的人都可以通过gmail与我联系,即phelsen at。
答案 0 :(得分:7)
对于C#(原始标签),这是“编译器即服务”在未来某个版本中将启用的类型。但是,您可以使用单声道(可使用源代码) - CsharpRepl执行其中一些操作。它应该打印最后一个命令的值 - 而不是完全与您想要的Person
描述相同(我希望它将使用ToString()
)。
(来源:mono-project.com)
答案 1 :(得分:6)
您可能希望查看Powershell,但据我所知,没有可用的来源。语法不完全是C#,但它很容易上手。
答案 2 :(得分:4)
F#有一个命令行REPL(fsi.exe)。并且F#的代码可用。
(有关旧屏幕截图,请参阅http://strangelights.com/fsharp/wiki/default.aspx/FSharpWiki/FSI.html以获取相关信息。)
答案 3 :(得分:3)
IronPython也有一个REPL。
答案 4 :(得分:2)
您是否尝试过PowerShell(以前代号为Monad)?它是一个基于.NET的CLI,可以完全访问程序集,虽然模型与您指定的“加载程序集”过程不同。