当前位置: 首页 > news >正文

wordpress常规选项seo主管的seo优化方案

wordpress常规选项,seo主管的seo优化方案,石柱县建设局网站,网站建设有哪些困难一个在C#中集成Python的例子。在C#中可以执行Python脚本,在Python中也可以调用C#宿主中的功能(clr.AddReference(Business))。 文件说明 Debug为执行目录 Mgr.exe为执行文件 Py\init.py为python初始化脚本 Py\Lib.zip为python需要的模块&…

一个在C#中集成Python的例子。在C#中可以执行Python脚本,在Python中也可以调用C#宿主中的功能(clr.AddReference('Business'))。 

文件说明

Debug为执行目录

Mgr.exe为执行文件

Py\init.py为python初始化脚本

Py\Lib.zip为python需要的模块,可以在init.py中import

Data为数据库目录

mgr.db为mgr.exe使用的数据库

操作说明

系统设置

可以在这里修改运行的参数

打开一个账户

用户的规则设置

交易

代码说明

Python的说明

在Python中可以调用C#宿主中的功能(clr.AddReference('Business'))。 

import clr
import io
import os
import stringclr.AddReference('System')
clr.AddReference('System.Data')
clr.AddReference('Business')from System import *
from System.Data import *
from Business import *def get_account_money_by_dt(account_id,date):db=Pub.db_name_mgrInitMoney=Pub.select_str(db,"select InitMoney from account where account_id="+account_id)cash=Pub.select_str(db,"select sum(amount_real) from tran where account_id="+account_id+" and tran_date<="+date)stock_amount=float.Parse("0")table_stock=Pub.select(db,"select code_type,code,sum(tran_count_real) as c from tran where account_id="+account_id+" and code<>'' and tran_date<="+date +" group by code_type,code")for dr in table_stock.Rows:code_type=DBUtils.get_str(dr, "code_type");code=DBUtils.get_str(dr, "code");count=DBUtils.get_str(dr, "c");price=Pub.select_str(code_type+"\\"+code,"select close from data_day where dt<="+date+" order by dt desc limit 1")if price<>'':stock_amount=stock_amount+float.Parse(price)*float.Parse(count)if cash=="":cash="0"if InitMoney=="":InitMoney="0"return (float.Parse(InitMoney)+float.Parse(cash)+stock_amount).ToString("0.00")

C#的说明

加载Python环境

            instance = new Py();
            instance.init_py_lib();

        public void init_py_lib(){engine = IronPython.Hosting.Python.CreateEngine();scope = engine.CreateScope();engine.Runtime.IO.SetOutput(Output,Encoding.Unicode);engine.SetTrace(on_trace);StringBuilder sb = new StringBuilder();sb.AppendLine(@"import sys ");sb.AppendLine(@"sys.path.append("".\py\Lib.zip"") ");sb.AppendLine(@"sys.path.append("".\scripts"") ");ScriptSource source = engine.CreateScriptSourceFromString(sb.ToString());source.Execute(scope);string init_py = Pub.exe_dir + @"\py\init.py";if (System.IO.File.Exists(init_py)){ScriptSource source_init = engine.CreateScriptSourceFromFile(init_py);source_init.Execute(scope);}}

执行脚本

 

       public Boolean Execute(string script, out string msg, out IronPyErrors err, ExecRequest request){msg = "";err = new IronPyErrors();StringBuilder sb = request.log;sb.AppendLine("开始 "+DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") );sb.AppendLine("------");try{last_trace_lineno = "";last_trace_result = "";ScriptSource source = engine.CreateScriptSourceFromString(script);                CompiledCode cc = source.Compile(err);  if (err.Items.Count > 0){err.ToStringBuilder(sb);msg = "编译错误";sb.Append(msg);return false;}scope.SetVariable("request", request);Py.instance.Output.SetLength(0);string sql_err = DataAccess.DataConn.clear_err();cc.Execute(scope);               Py.instance.Output.Flush();string print_s = Encoding.Unicode.GetString(Py.instance.Output.ToArray());sql_err = DataAccess.DataConn.clear_err();if (sql_err != "")sb.AppendLine(sql_err);sb.AppendLine(print_s);sb.AppendLine("------");msg = "运行完成 "+ DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") ;sb.Append(msg);return true;}catch (Exception e){if (last_trace_lineno != "")msg = "trace line:" + last_trace_lineno;if (last_trace_result != "")msg = msg + " " + "trace:" + last_trace_result;msg = msg + " " + e.Message;sb.Append(msg);}return false;}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using Microsoft.Scripting;
using Microsoft.Scripting.Hosting;
using IronPython;
using IronPython.Runtime;
using IronPython.Modules;
using IronPython.Compiler;
using IronPython.Runtime.Exceptions;
using IronPython.Hosting;
using Business;namespace Mgr
{public class Py{public static Py instance = null;public static void init(){if (instance != null)return;instance = new Py();instance.init_py_lib();}public ScriptEngine engine = null;public ScriptScope scope = null;public static string get_key(string name){return name.Trim().ToLower();}public static Dictionary<string , ScriptSource> ScriptDict = new Dictionary<string , ScriptSource>();public string set_script(string id ,string script){if (id == "")id = Guid.NewGuid().ToString();id = get_key(id);ScriptSource source = engine.CreateScriptSourceFromString(script);ScriptDict[id] = source;return id;}public string last_trace_lineno = "";public string last_trace_result = "";public TracebackDelegate on_trace(TraceBackFrame frame, string result, object payload){last_trace_lineno = frame.f_lineno.ToString();last_trace_result = result;return on_trace;}public Boolean Compile(string script,out string msg, out CompiledCode cc, out  IronPyErrors err){msg = "";err = new IronPyErrors();cc = null;try{ScriptSource source = engine.CreateScriptSourceFromString(script);              cc = source.Compile(err);msg = "编译完成";return true;}catch (Exception e){msg = e.Message;}return false;}public Boolean Execute_cc(CompiledCode cc, out string msg, ExecRequest request){msg = "";StringBuilder sb = request.log;sb.AppendLine("开始 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));sb.AppendLine("------");try{last_trace_lineno = "";last_trace_result = "";scope.SetVariable("request", request);Py.instance.Output.SetLength(0);string sql_err = DataAccess.DataConn.clear_err();cc.Execute(scope);Py.instance.Output.Flush();string print_s = Encoding.Unicode.GetString(Py.instance.Output.ToArray());sql_err = DataAccess.DataConn.clear_err();if (sql_err != "")sb.AppendLine(sql_err);sb.AppendLine(print_s);sb.AppendLine("------");msg = "运行完成 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");sb.Append(msg);return true;}catch (Exception e){if (last_trace_lineno != "")msg = "trace line:" + last_trace_lineno;if (last_trace_result != "")msg = msg + " " + "trace:" + last_trace_result;msg = msg + " " + e.Message;sb.Append(msg);}return false;}public Boolean Execute(string script, out string msg, out IronPyErrors err, ExecRequest request){msg = "";err = new IronPyErrors();StringBuilder sb = request.log;sb.AppendLine("开始 "+DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") );sb.AppendLine("------");try{last_trace_lineno = "";last_trace_result = "";ScriptSource source = engine.CreateScriptSourceFromString(script);                CompiledCode cc = source.Compile(err);  if (err.Items.Count > 0){err.ToStringBuilder(sb);msg = "编译错误";sb.Append(msg);return false;}scope.SetVariable("request", request);Py.instance.Output.SetLength(0);string sql_err = DataAccess.DataConn.clear_err();cc.Execute(scope);               Py.instance.Output.Flush();string print_s = Encoding.Unicode.GetString(Py.instance.Output.ToArray());sql_err = DataAccess.DataConn.clear_err();if (sql_err != "")sb.AppendLine(sql_err);sb.AppendLine(print_s);sb.AppendLine("------");msg = "运行完成 "+ DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") ;sb.Append(msg);return true;}catch (Exception e){if (last_trace_lineno != "")msg = "trace line:" + last_trace_lineno;if (last_trace_result != "")msg = msg + " " + "trace:" + last_trace_result;msg = msg + " " + e.Message;sb.Append(msg);}return false;}public MemoryStream Output = new MemoryStream();public void init_py_lib(){engine = IronPython.Hosting.Python.CreateEngine();scope = engine.CreateScope();engine.Runtime.IO.SetOutput(Output,Encoding.Unicode);engine.SetTrace(on_trace);StringBuilder sb = new StringBuilder();sb.AppendLine(@"import sys ");sb.AppendLine(@"sys.path.append("".\py\Lib.zip"") ");sb.AppendLine(@"sys.path.append("".\scripts"") ");ScriptSource source = engine.CreateScriptSourceFromString(sb.ToString());source.Execute(scope);string init_py = Pub.exe_dir + @"\py\init.py";if (System.IO.File.Exists(init_py)){ScriptSource source_init = engine.CreateScriptSourceFromFile(init_py);source_init.Execute(scope);}}}public class IronPyErrorsItem{public string Message { get; set; }public int ErrorCode { get; set; }public Severity sev { get; set; }public SourceSpan Span { get; set; }public string get_info(){string line = "";line = Span.Start.Line.ToString() + "行" + Span.Start.Column.ToString() + "列";line = line + "(" + sev.ToString() +" " + ErrorCode.ToString()+"): ";line = line +  Message;return line;}}public class IronPyErrors : ErrorListener{public List<IronPyErrorsItem> Items = new List<IronPyErrorsItem>();public void ToStringBuilder(StringBuilder sb){foreach (IronPyErrorsItem i in Items){sb.AppendLine(i.get_info());}}public override void ErrorReported(ScriptSource source, string message, Microsoft.Scripting.SourceSpan span, int errorCode, Microsoft.Scripting.Severity severity){IronPyErrorsItem i = new IronPyErrorsItem{Message = message,ErrorCode = errorCode,sev = severity,Span = span};Items.Add(i);}
}
}

http://www.yayakq.cn/news/410890/

相关文章:

  • 台山网站建设公司邯郸品牌商标vi设计策划公司
  • 网站之间如何交换友情链接建设网站最好的
  • 做网站 租服务器国际采购平台有哪些
  • 手机网站制作费用多少门户网站开发简历
  • seo网站是什么网代理加盟
  • 开彩票网站做私庄青岛seo网站建设
  • 请别人做网站需要注意什么问题wordpress 教育 演示
  • 网站在哪做百度电话人工服务
  • 城市建设档案馆网站昆明制作手机网站
  • 河南省教育厅官方网站师德建设个人网站备案的好处
  • 网站开发专业分析信誉好的做网站
  • 深圳市门户网站建设多少钱wordpress ality
  • 智盈中心网站建设上海网站建设价格
  • 丹阳网站建设机构php做的网站好不好
  • 六安网站建设公司OA网站建设分析
  • 专科网站开发就业方向以下区域不属于官方网站
  • 网站信息备案查询校园网站建设材料
  • 网站建设有哪些分工分受欢迎的唐山网站建设
  • 专业网站建设电wordpress 商店模板
  • 企业网站做电脑营销淘宝客网站建设平台
  • 电商网站的建设背景公司邮箱怎么查询
  • 百度推广 做网站基于营销导向的企业网站建设研究
  • 游戏门户网站建设网站建设小西门
  • 服装网站设计公司p2p
  • 大连网络建站模板课程培训网站建设
  • 网站内容相同算侵权吗j2ee网站开发买什么书
  • 网站系统建设系广告经营者公司介绍网站怎么做的
  • 黄村网站建设报价西安建站价格
  • 公司做网站需要哪些费用上海建设集团网站
  • 婚纱摄影建设网站的目的如何制作论坛网站