我有一个 DLL,其中包含一个用于管理音频和 MIDI 端口和连接的类。每当端口注册或注销或者连接形成或释放时,此类都会触发一个事件,例如 ConnectionChanged
。带有自定义事件参数,包括属性 Enum ChangeType
和 IEnumerable<Connection> ChangedConnections
现在我的问题是:我真的应该只发送更改的连接或将事件参数的属性更改为 Connections
吗?并发送一个包含所有事件连接的 IEnumerable?
最佳答案
在我看来,该事件称为“ConnectionChanged”,您应该在事件参数中包含适用于该事件的连接。使用您类(class)的成员使所有事件连接都可访问。
触发事件时。您发送在成员 Sender 中引发事件的实际对象。所以如果有人真正对所有活跃的连接感兴趣,可以通过Sender对象获取。
关于c# - 事件参数中 IEnumerable 的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5039710/