110,534
社区成员
发帖
与我相关
我的任务
分享
using IronPython.Hosting;
using Microsoft.Scripting.Hosting;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
namespace NNWebClient_WebService
{
/// <summary>
/// NN_WebService 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。
// [System.Web.Script.Services.ScriptService]
public class NN_WebService : System.Web.Services.WebService
{
string PatentTrans = "";
[WebMethod]
public void HelloWorld()
{
try
{
ScriptEngine pyEngine = Python.CreateEngine();//创建Python解释器对象
dynamic py = pyEngine.ExecuteFile(@"F:\\学习\\NNWebClient_WebService\\NNWebClient_WebService\\obj\\Debug\\TransServerProxy.py");//读取脚本文件
string dd = py.PatentTrans(PatentTrans);//调用脚本文件中对应的函数
//ScriptEngine pyEngine = Python.CreateEngine();//创建一个Python引擎
//dynamic da = pyEngine.CreateScriptSourceFromString(textBox1.Text);//读取脚本源码字符串
//da.Execute();//执行脚本;winForm程序中执行结果会在输出中显示;控制台程序中执行结果会显示在控制台中
}
catch (Exception ex)
{
string d = ex.Message;
}
}
}
}
代码就是这样,是我少了什么东西吗?还是什么问题,哪位大神能够教教小弟c#调用的时候python的文件不是你系统安装的位置,你要在那边把所有引用的东西放进去。
直接运行python的代码能成功吗