草庐IT

action-menu

全部标签

c# - 如何使用 Action 过滤器在 asp.net mvc 中集中模型状态验证?

我在几个地方写了这段代码,并且总是重复这个逻辑:publicActionResultMyMethod(MyModelcollection){if(!ModelState.IsValid){returnJson(false);//toreaditfromjavascript,it'salwaysequal}else{try{//logicherereturnJson(true);//orJson(false);}catch{returnJson(false);//toreaditfromjavascript,it'salwaysequal}}}有没有办法使用Action过滤器,而不是重复

c# - AmbiguousActionException : Multiple actions matched. 以下操作匹配路由数据并满足所有约束

我正在使用ASP.NETCoreMVC创建一个网站。当我点击一个Action时,我得到这个错误:AmbiguousActionException:Multipleactionsmatched.Thefollowingactionsmatchedroutedataandhadallconstraintssatisfied:Web.Controllers.ChangeEventsController.Create(Web)Web.Controllers.ProductsController.CreateChangeEvent(Web)这就是我在index.cshtmlm中为我的Produc

c# - 如何在类文件中使用 Url.Action()?

如何在MVC项目的类文件中使用Url.Action()?喜欢:namespace_3harf{publicclassmyFunction{publicstaticvoidCheckUserAdminPanelPermissionToAccess(){if(ReferenceEquals(HttpContext.Current.Session["Loged"],"true")&&myFunction.GetPermission.AdminPermissionToLoginAdminPanel(Convert.ToInt32(HttpContext.Current.Session["UID

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