как добавить глобальные значения в do tnet core 3 - PullRequest
0 голосов
/ 05 августа 2020

Мне нужно установить глобальные значения и прочитать их из любого места в моем проекте. каков сценарий, если AddSingleton как? Я вижу это, но не работает со мной Глобальные переменные в ASP. Net Core 2 спасибо

Ответы [ 2 ]

0 голосов
/ 05 августа 2020

Ответ Ноя очень хорош, однако для более простых случаев вы обычно хотите:

  1. Создайте класс stati c, содержащий все ваши данные, в root пространство имен

    public static class Cache
    {
        public static string Value1 => "Example";
        public static int Value2 => 42;
    }
    
  2. Готово

Вы можете получить доступ к его значениям в масштабе всей системы, например:

var mySharedStringValue = Cache.Value1;

Если вам нужно «загрузить» эти значения при запуске, вы можете изменить подпись свойств на

public static string Value1 { get; private set; } 

и использовать stati c конструктор или простой stati c метод инициализации, который вы вызываете в классе Startup.cs при запуске приложения.

0 голосов
/ 05 августа 2020

Если вы хотите прочитать значение stati c глобально, я бы предложил использовать для этого систему конфигурации . Он позволяет внедрять конфигурацию везде, где это необходимо для чтения.

Если вам нужно поделиться данными, которые могут изменяться, вам понадобится какой-то общий потокобезопасный механизм. Одним из вариантов, встроенных в структуру, является использование кеш-памяти в памяти , который представляет собой глобальный общий кеш, который можно внедрить где угодно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...