草庐IT

ACTION_DISCOVERY_STARTED

全部标签

c# - 什么是 Action <字符串>?

什么是Action,如何使用? 最佳答案 Action是具有一到4个参数(在.NET4中为16个)并且不返回值的标准委托(delegate)。它用于表示一个Action。Actionprint=(x)=>Console.WriteLine(x);Listnames=newList{"pierre","paul","jacques"};names.ForEach(print);还有其他预定义的委托(delegate):Predicate,具有一个参数并返回一个bool值的委托(delegate)。Predicatepredicate=

c# - 将 Action<T> 转换为 Func<T,Tres> 的最佳方法是什么?

我的类中有两个具有此签名的函数,publicstaticTResultExecute(FuncremoteCall);publicstaticvoidExecute(ActionremoteCall)如何将第二个方法中的同一个委托(delegate)传递给第一个方法?使用Delegate参数创建方法不是一种方法,因为我丢失了一些异常信息。 最佳答案 将其包装在Func类型的委托(delegate)中具有虚拟返回值,例如publicstaticvoidExecute(ActionremoteCall){Execute(t=>{remo

c# - Ninject 和 MVC3 : Dependency injection to action filters

关于如何使用Ninject在ASP.NETMVC3中的ActionFilter上进行属性注入(inject),我发现了大量不确定的文章和问题。谁能给我一个明确的例子吗?这是我的自定义身份验证属性。publicclassCustomAuthorizeAttribute:AuthorizeAttribute{[Inject]publicIServiceService{get;set;}[Inject]publicIAuthenticationHelperAuthenticationHelper{get;set;}publicoverridevoidOnAuthorization(Autho

c# - ASP.NET MVC : Register action filter without modifying controller

我正在使用nopCommerce,我需要添加我唯一的ActionFilter,但是,我不想修改核心Controller以避免我的代码在发布新更新时被覆盖。我已经设置了我的Action过滤器:publicclassProductActionFilterAttribute:ActionFilterAttribute{publicoverridevoidOnActionExecuted(ActionExecutedContextfilterContext){if(filterContext.ResultisViewResult){...}base.OnActionExecuted(filte

c# - 将 Action<T> 转换为 Action<object>

如何转换Action至Action在C#中? 最佳答案 这是您要求的示例(可以在最后一行添加类型检查以正确处理无效的强制转换异常以更加用户友好):publicActionConvert(ActionmyActionT){if(myActionT==null)returnnull;elsereturnnewAction(o=>myActionT((T)o));}也许你可以提供有关该任务的更多详细信息,因为现在它看起来有点奇怪。 关于c#-将Action转换为Action,我们在StackO

c# - 如何在 ASP.NET Web API 上对 Action Filter 进行依赖注入(inject)

我真的被困在将依赖项注入(inject)到webapi的操作过滤器中的方法上。我有一个像这样的Action过滤器:publicclassAuthorizationAttribute:ActionFilterAttribute{publicIApiKeyRepositoryRepository{get;set;}privateGuidGetApiKey(stringcustomerKey){returnRepository.GetApiKey(customerKey);}publicoverridevoidOnActionExecuting(HttpActionContextaction

c# - 如何使用 .NET Action 执行参数数量未知的方法?

我想在向用户显示进度条的同时在工作线程上执行一些操作。我创建了一个类publicclassProgressBar{publicvoidStartAsyncTask(Actionaction){Taskt=newTask(action);t.start();}}我发现我可以通过以下方式将任何方法发送到StartAsyncTask:ProgressBarpb=newProgressBar();pb.StartAsyncTask(()=>DoSomething(15,"something"));publicvoidDoSomething(inti,strings){//dosomething

c# - C#中的委托(delegate)和 Action 有什么区别

如果我进行搜索,我肯定会找到说明什么是委托(delegate)和操作的示例。我已经阅读了提供委托(delegate)示例的基本书籍。但我想知道的是它们在现实世界中的用途。请不要给出HelloWorld示例或Animal类,它们太基础了例如:它们有什么区别何时使用委托(delegate)或操作何时不使用委托(delegate)或操作什么时候他们可以过头了 最佳答案 Action是一个Delegate。它是这样定义的:publicdelegatevoidAction();您可以像创建抽象方法一样创建自己的委托(delegate)类型;你

c# - 使用 Action 字典而不是 switch 语句

我正在审查我的一些旧代码(有一些空闲时间),我注意到一个相当冗长的switch语句。由于获得了新知识,我将其重构为以下形式:privateDictionarycreateView{get{returnnewDictionary(){{"Standard",CreateStudySummaryView},{"ByGroup",CreateStudySummaryByGroupView},{"ByGroup/Time",CreateViewGroupByHour}};}}您认为这是一种良好的做法,还是仅仅是一种多余且不必要的情况?我热衷于确保我学习的新技术不是为了聪明而聪明,而是它们实际上

c# - 为什么调用不明确? 'Task.Run(Action)' 和 'Task.Run(Func<Task>)'

考虑以下代码:publicvoidCacheData(){Task.Run((Action)CacheExternalData);Task.Run(()=>CacheExternalData());Task.Run(CacheExternalDataTask);Task.Run(CacheExternalData);}publicTaskCacheExternalDataTask(){//LongrunningcodereturnTask.FromResult("Data");}publicvoidCacheExternalData(){//Longrunningcode}为什么Tas