C# 从委托中的方法获取所有返回的字符串
在这段代码中,我有一个关于委托的问题,我为委托添加了三个方法。有一个字符串返回。排队 字符串delOut=del(“啤酒”) 给我宝贵的德洛特代表分配“长度:4” 如何收集委托中方法返回的所有字符串C# 从委托中的方法获取所有返回的字符串,c#,delegates,C#,Delegates,在这段代码中,我有一个关于委托的问题,我为委托添加了三个方法。有一个字符串返回。排队 字符串delOut=del(“啤酒”) 给我宝贵的德洛特代表分配“长度:4” 如何收集委托中方法返回的所有字符串 public class NaForum { public delegate string MyDelegate(string s); public void TestDel() { MyDelegate del = s => s.ToLower();
public class NaForum
{
public delegate string MyDelegate(string s);
public void TestDel()
{
MyDelegate del = s => s.ToLower();
del += s => s.ToUpper();
del += s => string.Format("Length : {0}", s.Length);
string delOut = del("Beer");
Console.WriteLine(delOut);
}
}
谢谢您的回答。请参阅:您需要自己进行多播以获取各个返回值。您需要使用:
var results=newlist();
foreach(del.GetInvocationList()中的MyDelegate f){
结果:添加(f(“啤酒”);
}
现在,results
保存所有返回值
var results = new List<string>();
foreach (MyDelegate f in del.GetInvocationList()) {
results.Add(f("Beer"));
}