如何向 ac# IList添加字符串来自铁红宝石?
当我尝试使用 ruby 脚本修改 C# 字符串列表时,出现以下异常。
未处理的异常:System.ArgumentException:值“Scott”不是“System.String”类型,不能在此泛型集合中使用。
时间:2019-03-17标签:c#
IList<string> names = new List<string>();
names.Add("scott");
names.Add("jason");
ScriptRuntime runtime = IronRuby.Ruby.CreateRuntime();
ScriptEngine engine = runtime.GetEngine("IronRuby");
ScriptScope scope = engine.CreateScope();
scope.SetVariable("names", names);
engine.ExecuteFile("test.rb", scope);
foreach (var name in names)
{
Console.WriteLine(name);
}
ruby
names.map! { |item| item.capitalize}
I get the following exception when I try to use a ruby script to modify a list of c# strings.
Unhandled Exception: System.ArgumentException: The value "Scott" is not of type "System.String" and cannot be used in this generic collection.
c#
IList<string> names = new List<string>();
names.Add("scott");
names.Add("jason");
ScriptRuntime runtime = IronRuby.Ruby.CreateRuntime();
ScriptEngine engine = runtime.GetEngine("IronRuby");
ScriptScope scope = engine.CreateScope();
scope.SetVariable("names", names);
engine.ExecuteFile("test.rb", scope);
foreach (var name in names)
{
Console.WriteLine(name);
}
ruby
names.map! { |item| item.capitalize}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
将
to_clr_string
添加到 ruby 代码中:Add
to_clr_string
to the ruby code: