RDotNet 函数添加两个用户定义的输入给出错误
RDotNet function to add two user defined inputs giving errors
我在 ASP.NET MVC5 应用程序中编写了以下控制器函数,以 return 使用 R 函数 sum() 计算 2 个用户定义输入的总和。这编译成功但不提供任何输出。
由于 ajax 函数失败,它给出 500(内部服务器错误)。
谁能告诉我哪里出错了?
public JsonResult Sum(int? Text1,int? Text2)
{
REngine.SetEnvironmentVariables(); //
REngine engine = REngine.GetInstance();
return Json(engine.Evaluate("function(Text1,Text2)
{sum(Text1,Text2)}").AsFunction(), JsonRequestBehavior.AllowGet);
}
我自己解决了这个问题。 controller函数的正确代码片段如下:
var mySum = engine.Evaluate("function(x,y){return (x+y)}").AsFunction();
var v = engine.CreateInteger(Text1);
var u = engine.CreateInteger(Text2);
var sum1 = mySum.Invoke(new SymbolicExpression[] { u, v }).AsInteger();
return Json(sum1, JsonRequestBehavior.AllowGet); }
由于你们中的许多人给我发消息要求 rdotnet 应用程序的示例代码,我在我的博客上发布了一个示例代码和解释:
wordpress.com/post/pheonix116s.wordpress.com/169
希望大家觉得有用。
我在 ASP.NET MVC5 应用程序中编写了以下控制器函数,以 return 使用 R 函数 sum() 计算 2 个用户定义输入的总和。这编译成功但不提供任何输出。 由于 ajax 函数失败,它给出 500(内部服务器错误)。
谁能告诉我哪里出错了?
public JsonResult Sum(int? Text1,int? Text2)
{
REngine.SetEnvironmentVariables(); //
REngine engine = REngine.GetInstance();
return Json(engine.Evaluate("function(Text1,Text2)
{sum(Text1,Text2)}").AsFunction(), JsonRequestBehavior.AllowGet);
}
我自己解决了这个问题。 controller函数的正确代码片段如下:
var mySum = engine.Evaluate("function(x,y){return (x+y)}").AsFunction();
var v = engine.CreateInteger(Text1);
var u = engine.CreateInteger(Text2);
var sum1 = mySum.Invoke(new SymbolicExpression[] { u, v }).AsInteger();
return Json(sum1, JsonRequestBehavior.AllowGet); }
由于你们中的许多人给我发消息要求 rdotnet 应用程序的示例代码,我在我的博客上发布了一个示例代码和解释: wordpress.com/post/pheonix116s.wordpress.com/169
希望大家觉得有用。