gpt4 book ai didi

c# - 在 C# 程序集中处理事件

转载 作者:可可西里 更新时间:2023-11-01 11:10:14 26 4
gpt4 key购买 nike

我有一个名为 A.EXE 的可执行项目,它引用了 C# 类库 B.DLL。

A.EXE 生成由 B.DLL 中的类处理的事件。这些事件使用名为 ProjectEventArgs 的自定义 EventArgs 子项。

是否需要将 A.EXE 的引用添加到 B.DLL 项目以便定义 ProjectEventArgs 类?这对我来说似乎不太正确,因为我认为这是一种循环依赖。

有什么方法可以重构我的代码来避免这种情况吗?

谢谢,安迪

最佳答案

您的 B.DLL 不应该知道任何关于 A.EXE 的信息——您是对的,您正在创建循环依赖。

您需要重构代码,以便生成事件的方法位于 B.DLL 或 A 和 B 都引用的第三个程序集中。至少 ProjectEventArgs 的定义需要被移出 A。

在没有看到您的代码和更详细的项目结构的情况下,很难说哪种方法是最好的。

关于c# - 在 C# 程序集中处理事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3688622/

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