草庐IT

外参数

全部标签

c# - 更改 LambdaExpression 中的参数名称只是为了显示

假设我有这样一个表达式:Expression>exp如果我分配以下表达式:a=>a.First()!=0然后我调用exp.ToString()我将准确获得我传递的表达式,这非常好,但是,假设我们想用一些东西更改我们用于“a”的名称否则,我们怎么办?字符串替换不会在所有情况下都有效(它在上面的示例中有效,但是如果参数被称为'i'怎么办?)是否可以在不影响表达式语义的情况下仅进行参数名称替换、运行时?更新@PhilKlein工作得很好,但需要框架4。但是如果我们需要以框架3.5为目标,我们可以使用ExpressionVisitor。来自MattWarren的类(class),只需将Visi

c# - 将字节转换为图像时出现错误“参数无效”

我正在将字节转换为图像,但出现错误Parameterisnotvalid我正在粘贴我的代码。请检查代码并提示我做对还是错。Imagearr1=byteArrayToImage(Bytess);这是函数。publicstaticImagebyteArrayToImage(byte[]byteArrayIn){if(null==byteArrayIn||byteArrayIn.Length==0)returnnull;MemoryStreamms=newMemoryStream(byteArrayIn);try{ProcesscurrentProcess1=Process.GetCurre

c# - 使用 moq 验证对带有 param 参数的函数的调用

我有一个带有LogTrace(stringvalue,paramsobject[]parameters)的ILogger接口(interface)。现在我想验证是否调用了LogTrace并且要记录的字符串包含一些id。问题是它可以被不同地调用。例如。1)LogTrace("MyString"+id)2)LogTrace("MyString{0}",id)等等。Moq有没有好的方法来验证所有的场景?我只能考虑创建一个手工制作的模拟来格式化可用于验证的字符串。 最佳答案 mock.Verify(m=>m.LogTrace(It.IsAn

c# - 如何处理 null 或可选的 DLL 结构参数

如何处理使用pinvoke从C#调用的dll方法中的可选struct参数?例如,lpSecurityAttributesparameterhere不存在时应传递null。传递struct的正确方法似乎是使用ref,但它不能有可选参数,或者通常采用null.有什么方法可以实现? 最佳答案 你有几个选择1)使用class而不是struct我觉得这个方法最简单。只需声明struct作为class:[StructLayout(LayoutKind.Sequential)]publicclassCStruct{//member-list}然后

c# - 在 C# 中将参数作为 final 传递

这可能是一个重复的问题。但无法在搜索中找到它在java中,为了将方法参数标记为常量,我们将其声明为final等效的C#关键字是什么?喜欢publicvoiddoSomeThing(finalobjectmyObject){//printmyobject} 最佳答案 这在C#中是不可能的-无法将传入的参数标记为常量。如果您有一个const需要对许多函数可用,为什么不使用正确的作用域(类作用域或全局作用域,如果需要)声明它? 关于c#-在C#中将参数作为final传递,我们在StackOve

c# - 如何在报表查看器中添加参数?

嗨!我在visualstudio2010中有一个表单应用程序,我想使用报表查看器创建一个报表并添加一些参数。我试图从代码中添加参数,但没有成功。我有这个错误:Tablix“Tablix1”的FilterExpression表达式引用字段“datastart”。报表项表达式只能引用当前数据集范围内的字段,或者如果在聚合内,则引用指定的数据集范围内的字段。Report2.rdlc:错误rsParameterReference:tablix“Tablix1”的FilterValue表达式引用了一个不存在的报告参数“datastart”。在我的代码中这样做:privatevoidSetRepo

c# - Action 作为函数中的可选参数

这个问题在这里已经有了答案:OptionaldelegatesinC#[duplicate](4个答案)关闭9年前。是否可以将Action作为函数中的可选参数?button2Action应该是可选的。publicvoidDrawWindow(Rectp_PositionAndSize,stringp_Button2Text="NotInUse",Actionp_Button2Action){//Stuffhappenshere}我用例如p_Button2Action=delegate{Debug.Log("NotInUse");试过了}但它不会编译,因为p_Button2Action的

c# - 值不能为空。参数名称 : request

我正在使用nunit创建单元测试,所有这些代码在运行时都运行良好。我在下面有这个protectedHttpResponseMessage代码,当它返回时我的Controller正在调用它。但是,报错:"Valuecannotbenull.Parametername:request"isdisplaying.当我检查请求时,它实际上是null。问题:我将如何编写单元测试代码以返回HttpResponseMessage?错误显示在这一行:protectedHttpResponseMessageCreated(Tresult)=>Request.CreateResponse(HttpStat

c# - NET CORE MVC - 如何使用嵌套的多参数化路由

寻找在.NETCoreMVC中使用嵌套路由的最佳实践。假设CampusController.cs使用基本模型:[Route("api/campus/")]publicclassCampusController:Controller{...[HttpGet][Route("{campusId}")]publicIActionResultGetCampusInfo([FromQuery]intcampusId){...}}BuildingController.cs与子模型一起工作:[Route("api/campus/{campusId}/building")]publicclassBui

c# - 在 BackgroundWorker 处理程序中使用参数

为了将数据传递给BackgroundWorker的DoWork,我使用了一个单独的包装类实例:MyParamsmpar=newMyParams();...mpar.Par1=par1val;mpar.Par2=par2val;mpar.Par3=par3val;...varworker1=newSystem.ComponentModel.BackgroundWorker();worker1.DoWork+=newDoWorkEventHandler(worker1_DoWork);worker1.RunWorkerCompleted+=newRunWorkerCompletedEven