当前位置: 首页 > 编程语言 > C#

CreateaFuncwithRoslyn分享

时间:2023-04-10 12:13:33 C#

CreateaFuncwithRoslyn受这篇文章和这篇文章的启发,我正在尝试使用Roslyn创建一个动态函数。但是,上述资源已过时或不完整,我无法创建功能示例。到目前为止我所做的工作:varcode=@"FuncdoStuffToInt=i=>{varresult=i;for(vary=i;y<=i*2;y++){result+=y;}returnresult;};";varse=newScriptEngine();varsession=se.CreateSession();session.AddReference(typeof(Program).Assembly);session.AddReference(typeof(Expression).Assembly);session.ImportNamespace("系统");session.ImportNamespace("System.Linq");session.ImportNamespace("System.Linq.Expressions");varsubmission=session.CompileSubmission(代码);FuncmyFunc=submission.Execute();但是myFunc始终为空,我无法弄清楚问题出在哪里。有人可以帮我运行这个示例吗?免责声明:我实际上并没有真正使用Roslyn。目前,您的代码声明了一个变量,但之后不对其执行任何操作。根据这篇随机博客文章,看起来您可能只需要在声明后添加一个额外的表达式:varcode=@"FuncdoStuffToInt=i=>{varresult=i;for(vary=i;yidon't保证能用,还是试试看吧:)以上就是C#学习教程的全部内容:CreateaFuncwithRoslyn,如果对大家有用,需要了解更多C#学习教程,希望各位多多关注---本文收集自网络,不代表立场,如涉及侵权,请点击右边联系管理员删除,转载请注明出处: