我有一个带有out参数的方法,我想指向一个Action或Func(或其他类型的委托(delegate))就可以了。这很好用:staticvoidFunc(inta,intb){}Actionaction=Func;然而这不是staticvoidOutFunc(outinta,outintb){a=b=0;}Actionaction=OutFunc;//loadsofcompileerrors这可能是重复的,但搜索“outparameter”并不是特别有效。 最佳答案 Action和Func具体不带out或者ref参数。然而,他们只是
我在这里做错了什么?如何执行我的操作?varrecurse=newAction((item,depth)=>{if(item.Items.Count()>0)recurse(item,depth+1);//redsquigglyhere//...});当调用recurse说“预期的方法、委托(delegate)或事件”时,我得到一条红色波浪线。更新我接受了Homam的回答。我只是想为相同的内容添加/共享另一种语法......但我发现它在眼睛上更容易......Action>Recurse=null;Recurse=item=>{if(item.Items!=null)Recurse(i
我在这里做错了什么?如何执行我的操作?varrecurse=newAction((item,depth)=>{if(item.Items.Count()>0)recurse(item,depth+1);//redsquigglyhere//...});当调用recurse说“预期的方法、委托(delegate)或事件”时,我得到一条红色波浪线。更新我接受了Homam的回答。我只是想为相同的内容添加/共享另一种语法......但我发现它在眼睛上更容易......Action>Recurse=null;Recurse=item=>{if(item.Items!=null)Recurse(i
我正在尝试访问传递给操作过滤器OnActionExecuted中的View的模型数据。有谁知道这是否可能?我正在尝试做这样的事情:publicoverridevoidOnActionExecuted(ActionExecutedContextfilterContext){//getmodeldata//...sitemap.SetCurrentNode(model.Name);}有什么建议吗? 最佳答案 模型在:filterContext.Controller.ViewData.Model
我正在尝试访问传递给操作过滤器OnActionExecuted中的View的模型数据。有谁知道这是否可能?我正在尝试做这样的事情:publicoverridevoidOnActionExecuted(ActionExecutedContextfilterContext){//getmodeldata//...sitemap.SetCurrentNode(model.Name);}有什么建议吗? 最佳答案 模型在:filterContext.Controller.ViewData.Model
当我尝试在Action委托(delegate)中使用参数时...privateActionWriteToLogCallBack;我收到了这个设计时错误:Invalidtoken'params'inclass,struct,orinterfacememberdeclaration任何帮助! 最佳答案 这个解决方法怎么样?privateActionwriteToLogCallBack;publicvoidWriteToLogCallBack(strings,paramsobject[]args){if(writeToLogCallBac
当我尝试在Action委托(delegate)中使用参数时...privateActionWriteToLogCallBack;我收到了这个设计时错误:Invalidtoken'params'inclass,struct,orinterfacememberdeclaration任何帮助! 最佳答案 这个解决方法怎么样?privateActionwriteToLogCallBack;publicvoidWriteToLogCallBack(strings,paramsobject[]args){if(writeToLogCallBac
我创建了以下函数:publicvoidDelegatedCall(ActiondelegatedMethod)并定义了如下方法publicvoidfoo1(Stringstr){}但是,当我尝试调用DelegateCall时与foo1:DelegatedCall(foo1);...我收到以下编译器错误:Argument1:cannotconvertfrom'methodgroup'to'System.Action'此错误的原因是什么,我该如何更正它?不幸的是,类型转换foo1至Action不是一个选项。 最佳答案 Delegated
我创建了以下函数:publicvoidDelegatedCall(ActiondelegatedMethod)并定义了如下方法publicvoidfoo1(Stringstr){}但是,当我尝试调用DelegateCall时与foo1:DelegatedCall(foo1);...我收到以下编译器错误:Argument1:cannotconvertfrom'methodgroup'to'System.Action'此错误的原因是什么,我该如何更正它?不幸的是,类型转换foo1至Action不是一个选项。 最佳答案 Delegated
Action委托(delegate)返回无效。是否有任何其他返回非void值的内置委托(delegate)? 最佳答案 是的。Func返回指定为最终泛型类型参数的类型,例如Func返回int和Func接受一个整数并返回一个字符串。示例:FuncgetOne=()=>1;FuncconvertIntToString=i=>i.ToString();ActionprintToScreen=s=>Console.WriteLine(s);//usethemprintToScreen(convertIntToString(getOne())