草庐IT

static-methods

全部标签

c# - public static vs static public - 有区别吗?

sealedclassPI{publicstaticfloatnumber;staticPI(){number=3.141592653F;}staticpublicfloatval(){returnnumber;}}publicstatic和staticpublic有什么区别?它们可以按任何顺序使用吗?我将如何使用staticpublicfloatval()?类一初始化就执行吗? 最佳答案 没有区别。您可以按任一顺序随意指定它们。但是,我发现大多数开发人员倾向于使用publicstatic而不是staticpublic。

C# 4.0 : casting dynamic to static

这是一个分支问题,与我问的另一个问题有关here.我把它分开是因为它真的是一个子问题:我在转换dynamic类型的对象时遇到困难到另一个(已知的)静态类型。我有一个用于执行此操作的IronPython脚本:importclrclr.AddReference("System")fromSystemimport*defGetBclUri():returnUri("http://google.com")请注意,它只是更新BCLSystem.Uri类型并返回它.所以我知道静态类型返回的对象。现在在C#领域,我正在更新脚本托管内容并调用这个getter来返回Uri对象:dynamicuri=sc

c# - 使用 x :Static 指定时忽略 DataTemplate 键

我遇到了DataTemplate键的奇怪行为:当通过x:Type指定DataType,并且通过x:Static引用指定x:Key时,忽略x:Key。我编写了示例应用程序来说明它。XAML资源:C#:publicclassTestDto{}publicstaticclassDataKeys{publicstaticstringTestDtoKey="TestKey";publicstaticstringTestDtoKey2="TestKey2";publicstaticstringTestDtoKey4="TestKey4";}启动应用程序,在调试器中查看this.Resources.

c# - 如何关闭 resharper 中的 "Convert Extension Method to Plain Static"自动重构?

在使用Resharper时,由于某些原因,当我调用扩展方法时,它会自动将其转换为静态方法调用。这就是所谓的ConvertExtensionMethodtoPlainStatic重构。foo.Bar()成为MyStaticExtensions.Bar(foo);具有讽刺意味的是,它随后将此标记为代码异味。我该如何关闭它? 最佳答案 Resharper的IntelliSense中嵌入了此功能。我经常使用Linq-to-sql扩展,所以我禁用了这个功能:Resharper-选项-IntelliSense-启用RadiobuttonVisu

c# - 如何修复 'compiler error - cannot convert from method group to System.Delegate' ?

publicMainWindow(){CommandManager.AddExecutedHandler(this,ExecuteHandler);}voidExecuteHandler(objectsender,ExecutedRoutedEventArgse){}错误1​​参数2:无法从“方法组”转换为“System.Delegate” 最佳答案 我猜有多个具有不同签名的ExecuteHandler。只需将您的处理程序转换为您想要的版本:CommandManager.AddExecuteHandler(this,(Action)

c# - C# 中的线程和静态方法

这里以一个无意义的扩展方法为例:publicstaticclassMyExtensions{publicstaticintMyExtensionMethod(thisMyTypee){intx=1;x=2;returnx}}假设一个执行线程完成并包括以下行:x=2;处理器然后上下文切换,另一个线程进入相同的方法并完成该行:intx=1;我是否正确地假设第一个线程创建和分配的变量“x”与第二个线程创建和分配的变量“x”位于单独的堆栈上,这意味着该方法是可重入的? 最佳答案 是的,每个线程都有自己独立的局部变量。即使被多个线程同时调用,

c# - The non-generic method cannot be used with type arguments in this context 是什么意思?

我有以下类和方法:publicclassUserManager:IDisposablewhereTUser:class,global::Microsoft.AspNet.Identity.IUserwhereTKey:global::System.IEquatable{publicvirtualTaskFindByIdAsync(TKeyuserId);和:privateApplicationUserManager_userManager;publicApplicationUserManagerUserManager{get{return_userManager??Request.Ge

C# "Method not found"未使用反射的运行时异常

我在获取上述异常时遇到问题。我有一个相对简单的结构,分为两个dll。第一个包含一个IEntityService,IEntity,具有基本的实现。第二个包含实际的实现和接口(interface)。所以有一个实现IEntityService的IMachine服务和实现IEntityService和EntityService的MachineService。结果集合(实体加服务)也会发生类似的情况。此外,服务(机器和结果)是部分类/接口(interface),其中一个类是自动生成的。现在,在其中一台ResultMachine中,我试图获得一台机器,如果它不存在,我将创建它并保存。但是,当我尝试

c# - 使用调用构造函数的静态方法是否有任何好处(语义或其他)?

我刚刚更新了VisualStudio2013,我注意到在MVC应用程序的项目模板中,ApplicationDbContext类现在有一个只调用构造函数的静态方法:publicstaticApplicationDbContextCreate(){returnnewApplicationDbContext();}这对我来说似乎很困惑,但我想有一些语义原因我现在应该开始使用ApplicationDbContext.Create()而不是newApplicationDbContext()。这样做有什么好处吗? 最佳答案 其实。是的。在您的特

c# - 公共(public)静态字符串 MyFunc() 上的 "Expected class, delegate, enum, interface or struct"错误。什么 's an alternative to "字符串”?

当我尝试使用以下静态函数时出现错误。错误:Expectedclass,delegate,enum,interface,orstruct函数(和类):namespaceMyNamespace{publicclassMyClass{//SomeotherstaticmethodsthatuseClasses,delegates,enums,interfaces,orstructspublicstaticstringMyFunc(stringmyVar){stringmyText=myVar;//DosomestuffwithmyTextandmyVarreturnmyText;}}}这导致