草庐IT

no-param-reassign

全部标签

C#:将集合转换为 params[]

这里是我的代码的简化:voidFoo(paramsobject[]args){Bar(string.Format("Some{0}text{1}here{2}",/*Iwanttosendargs*/);}string.Format需要作为params发送的参数。有什么方法可以将args集合转换为string.Format方法的参数吗? 最佳答案 params关键字只是语法糖,它允许您使用任意数量的参数调用此类方法。但是,这些参数始终作为数组传递给方法。这意味着Foo(123,"hello",DateTime.Now)等同于Foo(

c# - Entity Framework 中 .SqlQuery() 方法的 params 参数是什么?

该方法采用一个字符串作为查询,并采用一个Object[]数组作为参数,大概是为了避免SQL注入(inject)。然而,世界上没有任何地方记录了应该将什么放入对象数组。关于SO的另一个问题提出了完全相同的问题,但接受的答案不起作用:WhenusingDbSet.SqlQuery(),howtousenamedparameters?我已经尝试了所有我能想到的参数替换形式,但它们都抛出了异常。有什么想法吗?它会不会像这样简单:SqlQuery("SELECT*FROM@table","Users")编辑:这是我尝试过的一些事情(异常是SqlException):varresult=conte

No appropriate protocol (protocol is disabled or cipher suites are inappropriate)(Java版)

问题在访问MySQL时出现了,如下错误:javax.net.ssl.SSLHandshakeException:Noappropriateprotocol(protocolisdisabledorciphersuitesareinappropriate)Thefollowingrequiredalgorithmsmightbedisabled:SSLv3,TLSv1,TLSv1.1,RC4,DES,MD5withRSA,DHkeySize1024,ECkeySize224,3DES_EDE_CBC,anon,NULL,includejdk.disabled.namedCurves.Editth

c# - MethodImpl(No Optimization) 在这个方法上,它做了什么?而且真的有必要吗?

好吧,我想对密码进行哈希处理,我查看了ASP.netIdentity在Microsoft.AspNet.Identity.Crypto类中的工作原理,然后我发现了这个函数(用于比较2个密码哈希):[MethodImpl(MethodImplOptions.NoOptimization)]privatestaticboolByteArraysEqual(byte[]a,byte[]b){if(object.ReferenceEquals(a,b)){returntrue;}if(((a==null)||(b==null))||(a.Length!=b.Length)){returnfal

c# - 系统.Runtime.Serialization.InvalidDataContractException : No set method for property

如错误所示,我的属性没有setter,但我不想要setter,它应该是只读的。 最佳答案 已编辑:使二传手成为内部。这仍然可以在程序集中设置,但这是一个很好的技巧,当用于位于其他人使用的程序集中的数据对象时效果很好,因为那些使用程序集的人将无法设置该属性,但是各种序列化程序都可以。 关于c#-系统.Runtime.Serialization.InvalidDataContractException:Nosetmethodforproperty,我们在StackOverflow上找到一个类

c# - 数据库错误 : There is no row at position 0

我相信几个月前有人问过这个问题,但我相信我的情况不同,同样的规则可能不适用。每次我执行这个方法都会弹出同样的错误。位置0处没有行。如果我将[0]更改为[1]或[15];[1]等处没有行。这是否意味着我的数据库甚至没有连接?我是否应该编写某种if语句来确定检查行是否存在?publicboolUpdateOrderToShipped(stringorder){orderNumber=order;stringbatch=ConfigurationManager.AppSettings["SuccessfulOrderBatch"];stringstatement="UPDATESOP1010

c# - 无效操作异常 : No IAuthenticationSignInHandler is configured to handle sign in for the scheme: MyCookieAuthenticationScheme

我正在尝试按照说明进行操作here将Cookie身份验证添加到我的网站。到目前为止,我添加了以下内容:InvoketheUseAuthenticationmethodintheConfiguremethodoftheStartup.csfile:app.UseAuthentication();InvoketheAddAuthenticationandAddCookiemethodsintheConfigureServicesmethodoftheStartup.csfile:services.AddAuthentication("MyCookieAuthenticationScheme

c# - .net 反射和 "params"关键字

在.net中,有没有办法使用反射来确定方法上的参数是否用“params”关键字标记? 最佳答案 检查ParamArrayAttribute是否已应用于ParameterInfo对象://usestring.Format(str,args)asatestvarmethod=typeof(string).GetMethod("Format",new[]{typeof(string),typeof(object[])});varparam=method.GetParameters()[1];Console.WriteLine(Attrib

c# - 在方法覆盖中更改 params 修饰符

我知道params修饰符(将数组类型的一个参数转换为所谓的“参数数组”)不是方法签名的一部分。现在考虑这个例子:classGiraffid{publicvirtualvoidEat(int[]leaves){Console.WriteLine("G");}}classOkapi:Giraffid{publicoverridevoidEat(paramsint[]leaves){Console.WriteLine("O");}}编译时没有警告。然后说:varokapi=newOkapi();okapi.Eat(2,4,6);//willnotcompile!给出错误(方法“Eat”没有重

c# - 在 Windows XP 上,在单个 c : drive 上以编程方式将页面文件设置为 "No Paging File"

我正在尝试编写一个C#/.NET应用程序来优化我们的XP工作站的硬盘驱动器将页面文件设置为“无页面文件”重启运行碎片整理实用程序以优化数据和应用创建一个连续的页面文件重新启动,从Sysinternals运行pagedefrag我真的很纠结#1。我删除了以下键:SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\PagingFiles重新启动后,系统控制面板显示“无页面文件”,但c:\pagefile.sys仍然存在并且正在被SYSTEM进程使用,所以我无法删除它,也无法优化HD。我尝试使用PendingFil