gpt4 book ai didi

c# - 加载程序集并更改源代码,这可能吗?如何做?

转载 作者:行者123 更新时间:2023-11-30 15:50:22 26 4
gpt4 key购买 nike

我正在写 .NET On-the-Fly用于 CLR 脚本的编译器并想实现下一个想法:有一个带有 C# 代码的模板文件,我想读取它,创建一个程序集,加载它并即时放大源代码。我怎样才能做到这一点?

最佳答案

您可以使用 CompileAssemblyFromSource 执行此操作.我过去做过一些类似的事情,我用静态类包装器增加了一些脚本,这样它们就可以很容易地被调用。你可以see it (or steal from it) here.

为此,只需加载您的模板,将您的额外放大添加到代码中,然后一次性编译它。


如果你想修改一个现有的程序集,你需要使用像Mono.Cecil这样的东西。 .它允许您在运行时加载和修改程序集。有一个CodeProject使用基于 Cecil 的 GPL 产品 Reflexil 的文章,可能会帮助您获得一些想法...

关于c# - 加载程序集并更改源代码,这可能吗?如何做?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/683109/

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