草庐IT

private-methods

全部标签

c# - CS1501 : No overload for method 'ToString' takes 0 arguments?

ToString的无重载怎么可能采用零参数?零参数ToString是System.Object的一部分!编辑以回应接近投票:由于我无法将我的构建服务器升级到.NET4.5,有什么方法可以使此代码与.NET4.0/VS2010编译器?没有给我的重载一个完全不同的名称,这并不酷。所讨论的对象是一个F#区分联合,它覆盖了从System.Object继承的ToString方法。被覆盖的ToString正在被属于同一解决方案的C#项目中的代码调用。这一切都很好,直到我将ToString的额外重载添加到我的可区分联合中,它接受一个参数。这一切都在我的本地机器上完美构建和运行(VS2012,所有项目

c# - 非静态私有(private)或 protected 事件存在哪些用例?

.NET中protected或私有(private)(非静态)事件的真正用途是什么?似乎任何私有(private)或protected事件都更容易通过虚拟方法处理。我可以(某种程度上)在静态事件中看到对此的需求,但对于正常事件则不然。您之前是否有一个用例清楚地展示了对非静态protected或私有(private)事件的需求或优势? 最佳答案 这是我曾经实现过的一个有点奇怪但真实的场景。您有部分类的机器生成和用户生成的两半。机器生成的一半包含希望在某些事件发生时通知用户生成的一半的代码。但是用户生成的一半可能不想做任何事情,或者可能

IDEA报错private field “xxx“ is never assigned解决

文章目录1.现象2.解决办法1.现象在IDEA中,开发Spring项目时,在一个类中使用@Autowired注解注入成员变量时,IDEA会在该成员变量上报类似于如下警告:一开始还以为是代码哪里配置的有问题,以前也没遇到过啊。暂时怀疑是下面两个原因导致的,但是还没有时间去验证,懂的大佬欢迎不吝赐教:1.之前用的是IDEA旗舰版,现在用的是社区版2.以前有用spring-ext插件,现在没有用2.解决办法经过查询知道,这只是IDEA的一个警告,并不是项目代码的错误提示。提示的内容是说这个变量没有指派,我们可以简单理解为这个变量未set值。因为IDEA现在没有识别Spring的自动注入的注解。我们可

c# - 调用私有(private)方法保留调用栈

我正在尝试找到“闯入非公共(public)方法”的解决方案。我只想调用RuntimeMethodInfo.InternalGetCurrentMethod(...),传递我自己的参数(这样我就可以实现GetCallingMethod()),或者直接使用RuntimeMethodInfo.InternatGetCurrentMethod(refStackCrawlMark.LookForMyCaller)在我的日志例程中。GetCurrentMethod实现为:[MethodImpl(MethodImplOptions.NoInlining)]publicstaticMethodBase

c# - 为什么 antlr3 c# 解析器方法是私有(private)的?

我正在antlr中构建一个解析器,它编译成一个工作的java目标。当我重新定位到c#2时,它会生成一个解析器,其中所有解析方法都是私有(private)的,但标有[GrammarRule("rulename")]属性。实际调用解析器的批准方法是什么?我正在使用ANTLR3.32010年11月30日12:45:30谢谢,安迪 最佳答案 使至少一个解析器规则像这样“公开”:grammarT;options{language=CSharp2;}publicparse:privateRule+EOF;privateRule:Token+;/

c# - 实体模型中可以使用私有(private) setter 吗?

我刚开始使用EntityFramework,我担心主键是否容易被覆盖。我知道我可以在我的Controller中保护这个模型(我将WebAPI与ASP.NETMVC5结合使用),但我想知道是否有可能阻止任何人通过注释或其他方式从模型本身设置我的模型的ID?基本上我可以这样做:publicintID{get;privateset;}或类似的东西,在EF6模型中?如果这很容易通过Google找到,那么我不知道要搜索的术语。我找不到任何能真正回答这个问题的东西。 最佳答案 是的,你可以,它应该工作得很好。每thisblogpost作者Jul

c# - 将参数传递给 PrivateObject 方法

这个问题在这里已经有了答案:HowtopassaparameterasareferencewithMethodInfo.Invoke(2个答案)关闭8年前。我正在尝试对私有(private)方法进行单元测试。我在下面看到了这个question的例子Classtarget=newClass();PrivateObjectobj=newPrivateObject(target);varretVal=obj.Invoke("PrivateMethod");Assert.AreEqual(retVal);我的私有(private)方法有2个引用参数。如何通过它们?

c# - 可以将私有(private)方法放在我的 Controller 中,还是应该使用 asp.net mvc 将它们分离到某种类型的帮助程序类中?

我有一个Controller,可以根据用户类型加载一些下拉菜单。例如:publicActionResultIndex(){switch(SessionHelper.ViewLimit){case"C":ViewData["CustDivision"]=LoadCustDivisions();ViewData["Customer"]=LoadCustomers();break;case"P":ViewData["Customer"]=LoadCustomers();ViewData["Employee"]=LoadEmployees();break;case"D":ViewData["C

c# - "public new virtual void Method()"是什么意思?

什么时候使用新的虚关键字修饰方法?什么是感情?比如定义一个接口(interface),然后添加一个类来继承这个接口(interface)。而是使用新的virtual来实现接口(interface)方法。interfaceIPrinter{voidPrint();}publicclassPrinterOne:IPrinter{publicvoidPrint(){Console.WriteLine("PrinterOne.");}}publicclassPrinterTwo:PrinterOne{publicnewvirtualvoidPrint(){Console.WriteLine("

c# - 分页列表错误 : The method 'OrderBy' must be called before the method 'Skip'

完整的错误信息如下:“Skip”方法仅支持LINQtoEntities中的排序输入。方法'OrderBy'必须在方法'Skip'之前调用在“PurchaseOrderController”中,我已将这段代码添加到索引方法中://GET:PurchaseOrderpublicActionResultIndex(int?page){returnView(db.PurchaseOrders.ToPagedList(page??1,3));}还在“PurchaseOrders”的索引View中,我添加了这段代码:@usingPagedList;@usingPagedList.Mvc;@mode