gpt4 book ai didi

c# - 您可以命名 Func 类型的参数吗?

转载 作者:IT王子 更新时间:2023-10-29 04:36:45 26 4
gpt4 key购买 nike

我有一个这样定义的“调度图”:

private Dictionary<string, Func<DynamicEntity, DynamicEntity, IEnumerable<DynamicEntity>, string>> _messageProcessing;

这使我可以根据 DynamicEntity 实例的名称轻松分派(dispatch)到不同的方法。

为了避免被所有维护代码的人永远讨厌,有没有什么方法可以命名 Func 中的参数以提供一些 DynamicEntity 是哪个的线索?

最佳答案

您不能使用内置的 Func 类型来完成它,但是创建您自己的自定义委托(delegate)类型并以类似的方式使用它很容易:

_messageProcessing.Add("input", (x, y, z) => "output");
_messageProcessing.Add("another", (x, y, z) => "example");

// ...

delegate string DispatchFunc(DynamicEntity first, DynamicEntity second,
IEnumerable<DynamicEntity> collection);

Dictionary<string, DispatchFunc> _messageProcessing;

关于c# - 您可以命名 Func<T> 类型的参数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6262646/

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