社区
C#
帖子详情
如果将字符串的内容作为代码执行
qiang119
2008-04-01 09:01:14
例如:b="string a;";
如何 通过执行变量b 从而达到程序自动定义变量a ???
...全文
90
1
打赏
收藏
如果将字符串的内容作为代码执行
例如:b="string a;"; 如何 通过执行变量b 从而达到程序自动定义变量a ???
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sx_lxh
2008-04-01
打赏
举报
回复
动态编译。
例:获取字符串所表示的逻辑意义
/*****************************************************************
** 文件名: Eval.cs
** Copyright (c) 1999 -2003
** 创建人: Phoenix
** 创建日期:
** 修改人:
** 修改日期:
** 描 述: 获取字符串所表示的逻辑意义
** 版 本:1.0
******************************************************************/
public class Eval
{
public static object GetValue(string value)
{
string codeSnippet = "using System; " + "\r\n" +
"namespace CzG {" + "\r\n" +
" public class Eval" + "\r\n" +
" {" + "\r\n" +
" public Eval(){} " + "\r\n" +
" public object GetValue()" + "\r\n" +
" {" + "\r\n" +
" return " + value + ";" + "\r\n" +
" }" + "\r\n" +
" } }";
CodeSnippetCompileUnit unit = new CodeSnippetCompileUnit(codeSnippet);
CodeDomProvider compiler=new CSharpCodeProvider() ;
//ICodeCompiler compiler = new CSharpCodeProvider().CreateCompiler();
string[] referenceAssemblies={"System.dll"};
CompilerParameters para = new CompilerParameters(referenceAssemblies ,"Eval.dll",false );
//para.ReferencedAssemblies.Add("System.dll");
para.GenerateInMemory = true;
para.GenerateExecutable = false;
//para.OutputAssembly = "Eval.dll";
Assembly asm = compiler.CompileAssemblyFromDom(para, unit).CompiledAssembly;
Type type = asm.GetType("CzG.Eval");
MethodInfo mi = type.GetMethod("GetValue", BindingFlags.Public | BindingFlags.Instance);
object obj = asm.CreateInstance("CzG.Eval");
object ret = mi.Invoke(obj, null);
return ret;
}
}
软件测试和质量保证行业技术趋势分析.pptx
软件测试和质量保证行业技术趋势分析.pptx
全国电子商务自考网络营销与策划实践考核试题..doc
全国电子商务自考网络营销与策划实践考核试题..doc
网络安全综合实习报告.doc
网络安全综合实习报告.doc
高校网站安全及防护策略浅析.docx
高校网站安全及防护策略浅析.docx
scikit_learn-1.7.0-cp313-cp313t-macosx_10_13_x86_64.whl
该资源为scikit_learn-1.7.0-cp313-cp313t-macosx_10_13_x86_64.whl
C#
111,092
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章