草庐IT

外参数

全部标签

c# - Moq 具有 5 个以上参数和访问调用参数的函数

我有一个功能我要最小起订量。问题是它需要5个参数。该框架仅包含Action和最小起订量的通用CallBack()仅重载Action和四个通用版本。有没有优雅的解决方法?这就是我想要做的:publicclassFilter:IFilter{publicintFilter(inti1,inti2,inti3,inti4,inti5){return0;}}//Moqcode:varmocker=newMock();mocker.Setup(x=>x.Filter(It.IsAny(),It.IsAny(),It.IsAny(),It.IsAny(),It.IsAny(),It.IsAny()

c# - 参数计数与 Invoke 不匹配?

下面的代码块导致错误:用户代码未处理TargetParameterCountException。参数计数不匹配。publicvoidAddListViewItem(string[]Data){if(InvokeRequired){Invoke(newAction(AddListViewItem),Data);}else{ListViewData.Items.Add(Data[0]).SubItems.AddRange(newstring[]{Data[1],Data[2],Data[3],});}}有什么想法吗? 最佳答案 错误是由

c# - 使用 HttpClient 和 Web API 方法 [FromBody] 参数发布到 Web API 最终为空

我正在尝试使用HttpClient发布到WebAPI。当我在WebAPI的Save方法中放置断点时,[FromBody]Product为空。这意味着我将产品发布到WebAPI的方式有问题。有人可以看看下面的代码,看看我可能哪里出错了。我假设它与标题和内容类型有关。从客户端存储库到WebAPI的POST调用应将产品对象作为JSON传递:publicasyncTaskSaveProduct(Productproduct){using(varclient=newHttpClient()){client.BaseAddress=newUri("http://localhost:99999/")

c# - 为什么 Asp.net MVC 不能区分具有不同参数的两个 Action ?

我正在尝试在我的Asp.netMVC应用程序中使用两种不同的帐户注册方法,一种供一般用户注册,另一种供使用特定注册token注册的用户使用。因此,我的AccountController中有以下方法签名:publicvirtualActionResultRegister(){...}publicvirtualActionResultRegister(GuidregistrationToken){...}但是,当我转到http://localhost/Account/Register时,我得到一个异常,即当前请求在这两个操作之间不明确。我的印象是,如果没有传入registrationTok

c# - ServiceStack.Net 的多个可选参数

我正在尝试使用ServiceStack.Net实现具有多个可选参数的服务目前我的路线是这样的Routes.Add("/save/{Year}/{Week}");我想像这样支持uris:/save/2010/12/Monday/4/Tuesday/6/Wednesday/7即星期一=4,星期二=6,星期三=7但是我希望能够忽略天数,即调用该服务的人可以决定他们是否要保存每一天的每个值...即像这样缺少参数值?Monday=4&Wednesday=7&Friday=6当然,一种解决方案是使用以下路由,当我不想保存值时只传递0。Routes.Add("/save/{Year}/{Week}/

c# - 反射(reflection)使用 out 参数的静态重载方法

我在通过反射调用带有out参数的重载静态方法时遇到一些问题,希望得到一些指示。我希望动态创建一个类型,如System.Int32或System.Decimal,然后调用静态TryParse(string,outx)方法。下面的代码有两个问题:t.GetMethod("TryParse",newType[]{typeof(string),t})未能返回我期望的MethodInfomi.Invoke(null,newobject[]{value.ToString(),concreteInstance})似乎成功但未设置输出参数concreteInstance到解析后的值交织到这个函数中,您

c# - 参数数量未知的 Func<>

考虑以下伪代码:TResultFoo(Funcf,paramsobject[]args){TResultresult=f(args);returnresult;}函数接受Func具有未知数量的通用参数和相应参数的列表。可以用C#写吗?如何定义和调用Foo?我如何通过args至f? 最佳答案 您可以将Delegate与DynamicInvoke一起使用。有了它,您就不需要处理f中的object[]。TResultFoo(Delegatef,paramsobject[]args){varresult=f.DynamicInvoke(ar

c# - Autofac - 确保 Controller 有一个无参数的公共(public)构造函数

我知道之前有人问过这个问题并回答过-我问这个问题的原因是(我认为)我尝试了所有建议的解决方案来解决这个问题,但仍然无法解决。我有一个ASP.NETWebAPI2.0项目。我安装了Autofac、Autofac.Mvc5和Autofac.WebApi2依赖项。当我尝试调用APIController时,出现以下错误:Anerroroccurredwhentryingtocreateacontrolleroftype'MyController'.Makesurethatthecontrollerhasaparameterlesspublicconstructor.在我的Global.asax

c# - 如何将参数传递给sql 'in'语句?

我想创建这个查询:select*fromproductswherenumberin('123','234','456');但我找不到任何使用Npgsql和NpgsqlParameter实现此目的的示例。我试过这样:string[]numbers=newstring[]{"123","234"};NpgsqlCommandscmd=newNpgsqlCommands("select*fromproductswherenumberin(:numbers)");NpgsqlParameterp=newNpgsqlParameter("numbers",numbers);command.Par

c# - 当不能简单地重载时混合可选参数和参数

类似于thisquestion,我想将可选参数与params关键字混合使用,这当然会产生歧义。不幸的是,创建重载的答案不起作用,因为我想利用调用者信息属性,如下所示:publicvoidInfo(stringmessage,[CallerMemberName]stringmemberName="",[CallerLineNumber]intlineNumber=0,paramsobject[]args){_log.Info(BuildMessage(message,memberName,lineNumber),args);}在没有可选参数的情况下创建重载会更改调用站点,从而阻止这些特定