gpt4 book ai didi

.net - 在 .Net 中反射执行代码

转载 作者:行者123 更新时间:2023-12-02 09:01:17 25 4
gpt4 key购买 nike

如何在 .Net 中反射性或动态地执行代码?如果 XML 包含“[]”内的内容,我希望将文本处理为代码而不是文本:


<Name>DateZero</Name><br/>
<Value>DateTime.Now.AddDays(-2)</Value>



<p><Name>DateOne</Name><br/>
<Value>[DateTime.Now.AddDays(-1).ToString("MM/dd/yy")]</Value></p>

<Name>DateTwo</Name><br/>
<Value>[DateTime.Now.ToString("MM/dd/yy")]</Value>

这意味着 DateZero 的值将呈现为“DateTime.Now.AddDays(-2)”,但对于接下来的两个,它将呈现为 06/10/09 和 06/11/09。

最佳答案

CS-Script将做您正在寻找的事情。

来自他们的一个例子:

Assembly assembly = CSScript.LoadMethod(
@"public static void PrintSum(int a, int b)
{
Console.WriteLine((a+b));
}");

AsmHelper script = new AsmHelper(assembly);
script.Invoke("*.PrintSum", 1, 2);

这应该很容易做你想做的事。我将它用于我们的规则引擎(刚刚从 Boo 切换而来),它非常适合动态代码。

关于.net - 在 .Net 中反射执行代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/981991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com