Здравствуйте. Как можно адекватно и удобно использовать переменную главного класса по всему проекту? Эта переменная - ОРМ, и мне нужен доступ к ней почти в каждом классе. Некоторые классы вообще подгружены отдельно, не через главный класс. Придумал только метод с instance'ом, типа при запуске выдать классу инстанс, потом подгружать ДБ по типу MainClass.Instance.DB.Action, но запись очень длинная получается.
Вариант первый - делать не синглтон, а просто статическую переменную именно для DB. Т.е. без instance.
Вариант второй - в каждом классе, который использует DB в конструкторе один раз сохранять в поле класса ссылку на MainClass.Instance.DB. Во всех случаях использования обращаться к этому полю.
Вариант третий - курить что такое DI и DI container и рефакторнуть все под это дело.
Первый не пойдет, у меня OrmLite. Второй - тоже, некоторые классы вообще инициализируются другой библиотекой.
Что такое DI знаю. Этот вариант мне подходит, спасибо)