ReturnValue = null из Roslyn Script - C#
Формулировка задачи:
Доброго времени суток. Столкнулся с проблемой. После компиляции кода и его выполнения, ReturnValue равно null, почему так? Если что вот мой код:
В чем моя ошибка?
var Script = CSharpScript.Create("", Options, Classes.GetType());
Script.Compile();
var Method = Script.ContinueWith(Code);
var State = await Method.RunAsync(Classes);
Type res = State.ReturnValue.GetType();Решение задачи: «ReturnValue = null из Roslyn Script»
textual
Листинг программы
var globals = new Globals(new Test1(), new Test2());
var script = CSharpScript.Create<string>("", globalsType: globals.GetType());
var method1 = script.ContinueWith("return A.PrintLine1("Hello World");");
var method2 = script.ContinueWith("return B.PrintLine2("Hello World");");
script.Compile();
// "Test1"
var res1 = await CSharpScript.EvaluateAsync("return A.PrintLine1("Hello World");", null, globals, globals.GetType());
// ReturnValue == "Test1"
var res = await method1.RunAsync(globals);
// ReturnValue == "Test2"
var res2 = await method2.RunAsync(globals);