首页 > 解决方案 > 从类中可见的单例服务

问题描述

我有一个单例服务类

    public class Globals
    {

        public string serverURL { get; set; } = "";
        public string hostURL { get; set; } = "";
    }

我已经在 Main 函数中注册了它:

builder.Services.AddSingleton<Services.Globals>();

无论如何,我想从项目中的其他类访问它,而不仅仅是剃刀页面。例如,我在 PCL 库中有一个类:

public class MyStuff
{

    public MyStuff()
    {
       - How do I access Globals in here?!
    }

    public void MyStuffMethod()
    {
       - How do I access Globals in here?!
    }
}

在此处输入图像描述

标签: asp.netblazorblazor-client-side

解决方案


像这样访问,你只需要在类的构造函数中添加一个参数。

public class HomeController : Controller
    {
        private Globals _globals;
        public HomeController(Globals globals)
        {
            _globals = globals;
        }
}

推荐阅读