|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Есть ASP.NET Core MVC приложение. Многие методы контроллеров работают с базой, например, что-то типа Код: c# 1. 2.
Они внутри должны подключаться к базе, слать запросы... Я сделал проект NET Standard, в нем реализую методы работы с базой, они потом вызываются в контроллерах. Код: c# 1. 2.
Настройки параметров доступа к базе хранятся в appsettings.json. Я их читаю один раз, храню в статиках и на каждом вызове метода, работающего с базой передаю параметры коннекта, делаю коннект, выполняю запрос, дисконнект. Вроде как открыть коннект один раз и держать открытым неправильно? Как минимум статик переменные - плохо. Какой есть другой подход? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 10:53 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Ролг Хупин Как минимум статик переменные - плохо. Какой есть другой подход? 1. Не использовать статики. 2. Открыл коннект, выполнил запрос, закрыл коннект. Очевидно же. В любой книжке по ASP.NET про это написано. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:02 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Ролг Хупин статик переменные - плохо. Какой есть другой подход? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:04 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
skyANA 2. Открыл коннект, выполнил запрос, закрыл коннект. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:06 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
skyANA Ролг Хупин Как минимум статик переменные - плохо. Какой есть другой подход? 1. Не использовать статики. 2. Открыл коннект, выполнил запрос, закрыл коннект. Очевидно же. В любой книжке по ASP.NET про это написано. 2.я так и предполагал, просто хотел получить подтверждение опытных девелоперов. 0. читать на каждом вызове метода настройки из appsettings.json? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:06 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Shocker.Pro Ролг Хупин статик переменные - плохо. Какой есть другой подход? +1 наверняка в большинстве примеров по ASP.NET Core используется EF, и там показано как в Startup.cs сетапить DbContext ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:07 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
skyANA наверняка в большинстве примеров ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:08 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Ролг Хупин 0. читать на каждом вызове метода настройки из appsettings.json? Нет, один раз в Startup-е. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:11 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Ролг Хупин, что там у тебя? PostgreSQL? дык на официальном сайте дата провайдера жеж есть примеры: http://www.npgsql.org/efcore/ ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:15 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
skyANA Shocker.Pro пропущено... В Core встроенный DI , читай, что такое синглтон +1 наверняка в большинстве примеров по ASP.NET Core используется EF, и там показано как в Startup.cs сетапить DbContext Я, честно говоря, не хотел бы использовать EF, много лишнего. У меня несложные запросы, процедуры, всё в руках. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:16 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Ролг Хупин skyANA пропущено... +1 наверняка в большинстве примеров по ASP.NET Core используется EF, и там показано как в Startup.cs сетапить DbContext Я, честно говоря, не хотел бы использовать EF, много лишнего. У меня несложные запросы, процедуры, всё в руках. Не используй, но тогда объясни, что такое db в твоём куске кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:18 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Shocker.Pro skyANA наверняка в большинстве примеров Не может юзер игнорировать учебники и еще и гордиться этим. Ннаверняка это про какого-то человека, который в этой ветке не присутствует. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:18 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
skyANA Ролг Хупин пропущено... Я, честно говоря, не хотел бы использовать EF, много лишнего. У меня несложные запросы, процедуры, всё в руках. Не используй, но тогда объясни, что такое db в твоём куске кода. Это моя реализация классов и методов работы с базой, NET Standard lib проект в solution. О ней и вопрос. Мне не нужны все эти EF'ские миграции, универсализации и пр. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:22 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Ролг Хупин Не может юзер игнорировать учебники и еще и гордиться этим. Ннаверняка это про какого-то человека, который в этой ветке не присутствует. (не выпилишь топором)))) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:35 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Ролг Хупин Это моя реализация классов и методов работы с базой ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:36 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Shocker.Pro Ролг Хупин Не может юзер игнорировать учебники и еще и гордиться этим. Ннаверняка это про какого-то человека, который в этой ветке не присутствует. (не выпилишь топором)))) ну, там же общие фразы ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:45 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Ролг Хупин skyANA пропущено... Не используй, но тогда объясни, что такое db в твоём куске кода. Это моя реализация классов и методов работы с базой, NET Standard lib проект в solution. О ней и вопрос. Мне не нужны все эти EF'ские миграции, универсализации и пр. Внутри типа этого: http://www.npgsql.org/doc/index.html ? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 11:47 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
skyANA Ролг Хупин пропущено... Это моя реализация классов и методов работы с базой, NET Standard lib проект в solution. О ней и вопрос. Мне не нужны все эти EF'ские миграции, универсализации и пр. Внутри типа этого: http://www.npgsql.org/doc/index.html ? да, если методы доступа к базе вынести в отдельный проект, тогда останется только var connString = "Host=myserver;Username=mylogin;Password=mypass;Database=mydatabase"; сформировать один раз и передавать в каждый. И даже лучше не передавать, а как было выше сказано - сделать типа контекста, который будет доступен отовсюду. (извините, это я рассуждаю по следам рекомендаций) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 12:00 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Shocker.Pro Ролг Хупин статик переменные - плохо. Какой есть другой подход? кстати, синглетон по сути тот же статик? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 12:44 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Ролг Хупин кстати, синглетон по сути тот же статик? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 12:46 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Shocker.Pro Ролг Хупин кстати, синглетон по сути тот же статик? ушел читать, но скоро вернусь ;-) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 12:52 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Ролг Хупин Shocker.Pro пропущено... Нет, читай про DI ушел читать, но скоро вернусь ;-) Вернулся. Сделал сервис, добавил его в public void Код: c# 1. 2. 3. 4. 5. 6. 7. 8.
Ок. Теперь вопрос: как добраться к нему в моих классах? Протаскивать через контроллеры типа этого и далее в свои функции хелпера - это лучший вариант? Имеется в виду, нельзя ли в своих хелперах сразу же добраться к этому сервису-синглетону Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 15:23 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Что ты подразумеваешь под хелпером? Если это какой-то класс, то он точно так же получается через DI и нет нужды что-то там протаскивать, DI сам разберется. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 15:26 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Ролг Хупин Код: c# 1.
у тебя есть поле в контроллере, зачем ты еще раз что-то там тянешь? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 15:26 |
|
Вопрос по структуре MVC
|
|||
---|---|---|---|
#18+
Shocker.Pro Что ты подразумеваешь под хелпером? Если это какой-то класс, то он точно так же получается через DI и нет нужды что-то там протаскивать, DI сам разберется. это моя ассембли View->Controller->DbHelper чтобы непосредственно в методах контроллера не работать с запросами хочу вынести в отдельных хелпер. Например, GetCustomer(string id) View->Controller [HttpGet] GetCustomer(string id) { ... DbHelper.GetCustomer(id); //<-здесь уже коннект, запрос, дисконнект и пр. ... return View(); } ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 15:31 |
|
|
start [/forum/topic.php?fid=18&msg=39907853&tid=1354829]: |
0ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
122ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
others: | 271ms |
total: | 503ms |
0 / 0 |