gpt4 book ai didi

c# - 有没有标准的方法或设计模式来处理这个问题?

转载 作者:行者123 更新时间:2023-11-30 21:09:33 27 4
gpt4 key购买 nike

我必须写一个 add-in对于现有的应用程序。客户将使用该应用程序和插件。申请和add-in是用户的黑匣子。我的加载项是 .Net C# dll和用户可以用 C# 编写代码。

现在我必须提供一种机制,用户可以通过该机制编写一些 C#代码。该代码将由我的 add-in 加载和执行在运行时以获取加载项中所需的数据。

实现这一点的最佳实践是什么

编辑

只是为了清除更多...

在我的加载项中,在执行过程中,我得到一个字符串

现在我想调用一些用户函数

string resultString = UserFunction("SomeString");

现在我想知道如何让用户写这个UserFunction这样我就可以在运行时调用它并获得 resultString返回基于 SomeString

最佳答案

呃..这有点棘手...特别是如果它必须完全按照您提出问题的方式发生的话。

您可以允许用户将文本 C# 代码传递给您的 dll 中的函数,然后基本上将该代码编译到内存中的程序集中,但是要允许某人将代码传递到已编译的程序集似乎需要做很多工作DLL,以便重新编译并再次运行。

您可以查看此处的帖子以获取有关此主题的更多信息: http://www.dotnetthoughts.net/2011/01/09/how-to-compile-c-code-snippet-in-runtime/

更好的做法是仅将 DATA 传递到 DLL,前提是您可以通过某种方式重构您的应用程序以支持它。

关于c# - 有没有标准的方法或设计模式来处理这个问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9005384/

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