|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
Имеется программа в которой необходимо сделать так сказать глобальный класс, который был бы доступен из других класов, но так чтобы не передать экземпляр класса настроек в каждый другой класс. Возможно ли подобное сделать и как лучше? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2013, 00:24 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
GavRYshA, DI контейнер решит проблемы отца русской демократии ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2013, 00:56 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
ИзопропилGavRYshA, DI контейнер решит проблемы отца русской демократии :-// В режиме сервис-локатора, что ли? Или зачем тут DI? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2013, 02:00 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
GavRYshAчтобы не передать экземпляр класса настроек в каждый другой класс А зачем они нужны в каждом другом классе? В "другие" классы не настройки должны передаваться, а объекты, свойства которых от настроек зависят, или инициализированные настройками фабрики таких объектов. И да, DI контейнер тут не нужен вообще. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2013, 02:04 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
ИзопропилGavRYshA, DI контейнер, статический класс или синглетон решит проблемы отца русской демократииДобавил. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2013, 09:50 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
ВерблюдИ да, DI контейнер тут не нужен вообще.Если он в проекте уже присутствует - наверное лучше через него. Тут вопрос - нужен ли он в этом проекте. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2013, 09:51 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
сделать подобное возможно, а как лучше, на это есть много разных мнений, и каждый считает что его мнение лучше. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2013, 12:42 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
sldсделать подобное возможно, а как лучше, на это есть много разных мнений, и каждый считает что его мнение лучше.Правильное мнение одно: вариантов решения несколько, выбор зависит от решаемой задачи. Остальные мнения неправильные. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2013, 13:41 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
Спасибо за ответы. Буду передавать экземпляр настроек в другие классы ибо пока не знаю как работает DI контейнер:) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 09:04 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
GavRYshA, 1. Смысл передавать настройки целиком? 2. Да и сами настройки обычно передавать смысла нет. Например, вместо строки подключения обычно лучше отдавать фабрику, которая умеет создать соединение. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 13:06 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
GavRYshAСпасибо за ответы. Буду передавать экземпляр настроек в другие классы ибо пока не знаю как работает DI контейнер:)Есть опасения, что в приложении может появиться второй экземпляр настроек? В противном случае статический класс или синглетон удобнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 13:26 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
я бы использовал статический класс и не парился. хотя конечно по такому скудному описанию более конкретно сказать нельзя. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 14:13 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
вкратце расскажу принцип работы программы. Когда открывается программа выскакивает окно для ввода логина и пароля для подключения к базе sql сервера. После ввода пароля программа получает ID пользователя под которым осуществился вход и открывается главное окно программы в котором и будет происходить вся работа. Этот ID я решил хранить в отдельном классе. Позже этот класс дополниться еще настройками, которые по окончанию работы запишутся в файл, чтобы при открытии по ID найти юзера в БД и заполнить поле "логин" автоматом. Вкратце так) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 14:33 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
GavRYshA, То есть строка соединения с базой не зависит от логина пользователя?))) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 14:58 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
P.S. что мешает просто логин хранить? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 14:58 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
LelouchGavRYshA, То есть строка соединения с базой не зависит от логина пользователя?))) Да не зависит, пользователей будет много и я решил их закинуть всех в таблицу. От ID пользователя будет зависеть какие данные, стоящие под этим ID, он сможет редактировать. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 15:52 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
GavRYshA, То есть, любой злоумышленник, получивший копию программы, сможет получить логин и пароль пользователя, под которым может делать все что угодно .) Что мешает использовать логины SQL сервера? У них кстати тоже есть ID, который можно получить и обработать. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 16:21 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
LelouchGavRYshA, То есть, любой злоумышленник, получивший копию программы, сможет получить логин и пароль пользователя, под которым может делать все что угодно .) Что мешает использовать логины SQL сервера? У них кстати тоже есть ID, который можно получить и обработать. не вижу разницы) зная логин и праль от SQL сервера тоже можно натворить многое. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 17:07 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 18:14 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
GavRYshA, В Вашем случае их даже узнавать не надо, они написаны в самой программе. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 18:22 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
Это все равно что на кредитке написать ее пин-код) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 18:24 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
LelouchТо есть, любой злоумышленник, получивший копию программы, сможет получить логин и пароль пользователя, под которым может делать все что угодно .)Каким образом злоумышленник получит пароль пользователя? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 19:33 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
skyANALelouchТо есть, любой злоумышленник, получивший копию программы, сможет получить логин и пароль пользователя, под которым может делать все что угодно .)Каким образом злоумышленник получит пароль пользователя? А зачем злоумышленнику логин и пароль пользователя, если в программе уже прописана строка подключения? Или она вынесена в отдельный файл и зашифрована? Что-то про это нигде сказано не было. А имея строку подключения, с вариантом хождения в базу из под application account в клиент серверном приложении можно поиметь небольшую кучку проблем с безопасностью... ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 20:38 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
GavRYshAДа не зависит, пользователей будет много и я решил их закинуть всех в таблицу я буду долго гнать велосипед (с) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 21:40 |
|
Реализация глобального класс с настройками
|
|||
---|---|---|---|
#18+
Раз уж заговорили о паролях, спрошу здесь. В приложении объявляю переменную Код: vbnet 1.
Логин и пароль к базе хранится в зашифровоном виде в отдельном файле. Когда приложение запускается - достается логин и пароль, расшифровывается и заполняется SqlBuilder необходимыми параметрами доступа. И потом SqlBuilder использую при отправке запроса к БД. Вопрос: с точки зрения безопасности такой подход правильный или нужно было как-то делать по другому? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.03.2013, 23:40 |
|
|
start [/forum/topic.php?fid=20&msg=38191238&tid=1404961]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
70ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
others: | 320ms |
total: | 492ms |
0 / 0 |