Answer the question
In order to leave comments, you need to log in
Expand variable across classes?
Здравствуйте. Как можно адекватно и удобно использовать переменную главного класса по всему проекту? Эта переменная - ОРМ, и мне нужен доступ к ней почти в каждом классе. Некоторые классы вообще подгружены отдельно, не через главный класс. Придумал только метод с instance'ом, типа при запуске выдать классу инстанс, потом подгружать ДБ по типу MainClass.Instance.DB.Action, но запись очень длинная получается.
Есть варианты короче?
Answer the question
In order to leave comments, you need to log in
Вариант первый - делать не синглтон, а просто статическую переменную именно для DB. Т.е. без instance.
Вариант второй - в каждом классе, который использует DB в конструкторе один раз сохранять в поле класса ссылку на MainClass.Instance.DB. Во всех случаях использования обращаться к этому полю.
Вариант третий - курить что такое DI и DI container и рефакторнуть все под это дело.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question