Blazor 在只有静态方法而没有构造函数的类中使用singleton?

Blazor 在只有静态方法而没有构造函数的类中使用singleton?,blazor,blazor-client-side,Blazor,Blazor Client Side,我有一个只包含静态方法的类,库中没有构造函数,我需要访问WebASM项目中跨.razor文件共享的单例对象的属性 如何在只有静态方法而没有构造函数的类中使用singleton 如何在只有静态方法而没有构造函数的类中使用singleton 这是不匹配的。单例由DI管理,稍后创建。以后可能会重新创建或清除它 所以对它们一视同仁:使两个对象都成为单态(首选)或使两个对象都成为静态对象 一般来说,您应该避免静态的诱惑,尤其是对于状态保持 静态对象在库中?是。静态对象在一个库中,该库中的许多其他类共享

我有一个只包含静态方法的类,库中没有构造函数,我需要访问WebASM项目中跨.razor文件共享的单例对象的属性

  • 如何在只有静态方法而没有构造函数的类中使用singleton
如何在只有静态方法而没有构造函数的类中使用singleton

这是不匹配的。单例由DI管理,稍后创建。以后可能会重新创建或清除它

所以对它们一视同仁:使两个对象都成为单态(首选)或使两个对象都成为静态对象


一般来说,您应该避免
静态
的诱惑,尤其是对于状态保持

静态对象在库中?是。静态对象在一个库中,该库中的许多其他类共享。库引用(取决于)您的单例?在哪里定义?在哪里创建?注册为service->builder.Services.AddSingleton();在program.cs中,但事情每分钟都变得越来越复杂,因为我现在必须有大约12个这样的服务,不知怎么的,代码开始看起来很难看。12个服务几乎什么都没有。但是看看它们通常是如何被捆绑到中的。。关键是,有很多类必须在库之间共享,而且很多类在其他库中持续存在,我认为将单例注入每个构造函数将是一个相当大的开销。注入只会添加一个引用。没有明确问题时不要进行优化。