powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Одно соединение с БД для разных окон.
25 сообщений из 71, страница 1 из 3
Одно соединение с БД для разных окон.
    #39570719
ramko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Коллеги добрый день.

Проектирую приложение из нескольких окон, на каждом из них планируется работа с БД (чтение, запись).
Как оптимальнее построить работу с БД? Мне не хочется создавать в каждом окне свое соеднинение, хочу одно соединение открыть при запуске приложения и закрыть при закрытии.

С ув.
Виктор
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570721
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ramkoхочу одно соединение открыть при запуске приложения и закрыть при закрытииИ в чём проблема?
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570723
ramko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не знаю как это сделать.
Один из варианто класс dbcontext, но является ли такой способ оптимальным не могу понять.
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570763
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ramkoКак оптимальнее построить работу с БД?
если оптимальнее для программиста, то в при открытии каждого окна - получить соединение и работай.
Задержки не будет, т.к. драйвер умный и не закрывает соединение некоторое время. Вдруг ты передумаешь))).
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570800
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
ramkoхочу одно соединение открыть при запуске приложения и закрыть при закрытии.
Микрософт не рекомендует так делать.
У него оптимизировано как раз повторное открытие соединений.

Рекомендую прочитать про пулл соединений
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570802
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2ramkoхочу одно соединение открыть при запуске приложения и закрыть при закрытии.
Микрософт не рекомендует так делать.
У него оптимизировано как раз повторное открытие соединений.

Рекомендую прочитать про пулл соединений Где это он не рекомендует? Только не говорите, что тогда ещё интернета не было
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570837
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAГде это он не рекомендует?
А где рекомендует по другому?
И где ваша рекомендация))?
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570852
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123skyANAГде это он не рекомендует?
А где рекомендует по другому?
И где ваша рекомендация))?По другому рекомендуется, чуть-ли не в любой книжке, или мануале по ASP.NET.

А моя "рекомендация" выше: делайте "одно соединение открыть при запуске приложения и закрыть при закрытии", в чём проблема?

P.S.: и эта тема не раз уже в данном разделе обсуждалась.
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570869
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAПо другому рекомендуется, чуть-ли не в любой книжке, или мануале по ASP.NET.
мы вроде в топике про десктоп и винФормс
skyANAПо другому рекомендуется, чуть-ли не в любой книжке, или мануале по ASP.NET.
отвечу в вашем стиле:
Где эти рекомендации?
skyANAА моя "рекомендация" выше
замечательно. И не возбуждайтесь когда советуют другие.
skyANAP.S.: и эта тема не раз уже в данном разделе обсуждалась.
аж интересно, что плохого в совете Cat2 или моём.
У меня проект именно так и работает.
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570875
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAА моя "рекомендация" выше: делайте "одно соединение открыть при запуске приложения и закрыть при закрытии", в чём проблема?
и садомазо при обрыве соединения
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570924
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
skyANACat2пропущено...

Микрософт не рекомендует так делать.
У него оптимизировано как раз повторное открытие соединений.

Рекомендую прочитать про пулл соединений Где это он не рекомендует? Только не говорите, что тогда ещё интернета не было

https://msdn.microsoft.com/ru-ru/library/8xx3tyca(v=vs.110).aspx Организация пулов соединений может существенно улучшить производительность и масштабируемость приложения. По умолчанию пул соединений в ADO.NET включен.
...
Внимание!
Настоятельно рекомендуется всегда закрывать соединение после его использования, чтобы оно вернулось в пул. Это можно сделать с помощью методов Close или Dispose объекта Connection либо открыв все соединения внутри инструкции using в C# или инструкции Using в Visual Basic. Соединения, которые явно не закрыты, нельзя добавить или вернуть в пул. Дополнительные сведения см. в разделе Оператор using (Справочник по C#) или Практическое руководство. Удаление системного ресурса (Visual Basic) для Visual Basic.
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570931
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123skyANAПо другому рекомендуется, чуть-ли не в любой книжке, или мануале по ASP.NET.
мы вроде в топике про десктоп и винФормсТы спросил: "А где рекомендует по другому?". Вот при разработке веб-приложений рекомендуют по другому.

Petro123skyANAПо другому рекомендуется, чуть-ли не в любой книжке, или мануале по ASP.NET.
отвечу в вашем стиле:
Где эти рекомендации?Чукча не читатель? "в любой книжке, или мануале по ASP.NET".

Petro123skyANAА моя "рекомендация" выше
замечательно. И не возбуждайтесь когда советуют другие.А я и не возбуждаюсь.

Petro123skyANAP.S.: и эта тема не раз уже в данном разделе обсуждалась.
аж интересно, что плохого в совете Cat2 или моём.
У меня проект именно так и работает.В совете Cat2 ничего плохого и полезная ссылка.
А в твоём не понятно что ты имеешь в виду под "получить соединение". Получить можно и уже открытое соединение
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570932
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилskyANAА моя "рекомендация" выше: делайте "одно соединение открыть при запуске приложения и закрыть при закрытии", в чём проблема?
и садомазо при обрыве соединенияДа бросьте. Ну случится такое раз в год, ну закроет пользователь программулину, откроет заного.
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570933
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2skyANAпропущено...
Где это он не рекомендует? Только не говорите, что тогда ещё интернета не было

https://msdn.microsoft.com/ru-ru/library/8xx3tyca(v=vs.110).aspx Организация пулов соединений может существенно улучшить производительность и масштабируемость приложения. По умолчанию пул соединений в ADO.NET включен.
...
Внимание!
Настоятельно рекомендуется всегда закрывать соединение после его использования, чтобы оно вернулось в пул. Это можно сделать с помощью методов Close или Dispose объекта Connection либо открыв все соединения внутри инструкции using в C# или инструкции Using в Visual Basic. Соединения, которые явно не закрыты, нельзя добавить или вернуть в пул. Дополнительные сведения см. в разделе Оператор using (Справочник по C#) или Практическое руководство. Удаление системного ресурса (Visual Basic) для Visual Basic.
Вы серъёзно уверены, что это имеет какой-то смысл для того, что разрабатывает ТС?
За счёт какой такой магии вдруг улучшится производительность и масштабируемость его приложения?
С чего вдруг соединение уже будет использоваться и чем, или контекст транзакции будет не тот?

У него программулинка из нескольких окон и вангую, что оно будет прекрасно работать, если "одно соединение открыть при запуске ... и закрыть при закрытии".
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570943
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAИзопропилпропущено...

и садомазо при обрыве соединенияДа бросьте. Ну случится такое раз в год, ну закроет пользователь программулину, откроет заного.

это вместо того чтоб просто взять из пула соединение?
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570950
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилskyANAпропущено...
Да бросьте. Ну случится такое раз в год, ну закроет пользователь программулину, откроет заного.

это вместо того чтоб просто взять из пула соединение?Так, давайте разберёмся. Соединения с сервером нет к примеру в течение 5 минут.
И что даст пользователю то, что оно берётся из пула? Он что так, что сяк видит ошибку.

ТС спрашивает: "Как оптимальнее построить работу с БД?".
И пишет: "Мне не хочется создавать в каждом окне свое соеднинение, хочу одно соединение открыть при запуске приложения и закрыть при закрытии.".

И вот моё мнение, что для его небольшого приложения, которым не думаю, что будут часто пользоваться, данное решение вполне себе оптимально.
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570958
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAВот при разработке веб-приложений рекомендуют по другому.
LOL
Водку с вином не мешают. Десктоп и веб - разная архитектура.
А мы в топике десктоп.
Ты совсем мальчик что ле?
Сказал бы просто что описался.
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570960
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAи вангую
"Сложнее всего в мире достигнуть простоты — это крайняя граница опыта и последнее усилие гения". © George Sand.
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570991
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123skyANAВот при разработке веб-приложений рекомендуют по другому.
LOL
Водку с вином не мешают. Десктоп и веб - разная архитектура.
А мы в топике десктоп.
Ты совсем мальчик что ле?
Сказал бы просто что описался.Не красиво на личности переходить, когда сказать нечего.

В веб множеству запросов в короткий промежуток времени нужно одно и тоже соединение.
Поэтому там и рекомендуют закрывать его как можно быстрее, чтобы оно попало в пул и могло быть использовано.

В десктопе же этого нет, а значит в большинстве случаев и нет проблем.
А если нет проблем, то не имеет особого смысла следовать рекомендациям по их избеганию
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39570998
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAНе красиво на личности переходить, когда сказать нечего.
я среагировал только на твой переходу тут:
skyANACat2пропущено...
Микрософт не рекомендует так делать.
У него оптимизировано как раз повторное открытие соединений.
Рекомендую прочитать про пулл соединений Где это он не рекомендует? Только не говорите, что тогда ещё интернета не было
т.к. сам видел эти рекомендации. Но для тебя это ОБС.
Я не против.
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39571000
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123skyANAНе красиво на личности переходить, когда сказать нечего.
я среагировал только на твой переходу тут:
skyANAпропущено...
Где это он не рекомендует? Только не говорите, что тогда ещё интернета не было
т.к. сам видел эти рекомендации. Но для тебя это ОБС.
Я не против.
1. Надо понимать почему даются те, или иные рекомендации, а не тупо им следовать.
2. Рекомендации не обязательны к исполнению, на то они и рекомендации.
3. Я так и не увидел ссылку на то, где написано "Мы НЕ рекомендуем так делать".
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39571002
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,

согласись, что из рекомендации делать вот так, совершенно не следует, что другое решение не имеет право на жизнь, или будет хуже.

Для задачи ТС оно вполне себе оптимально.
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39571047
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

соединение денег стоит
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39571048
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может у автора выполняются запросы 1000 раз в секунду, тогда не имеет смысла каждый раз открывать\закрывать подключения, если программа делает 1 запрос в час, то смысл держать его открытым не имеет, всё остальное находится посередине :)
в чем проблема автора, я не понял. Создайте до того, как создаете окна и передавайте класс для работы с БД в окно :)
...
Рейтинг: 0 / 0
Одно соединение с БД для разных окон.
    #39571055
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAИ вот моё мнение, что для его небольшого приложения, которым не думаю, что будут часто пользоваться, данное решение вполне себе оптимально.
у меня - противоположное.
...
Рейтинг: 0 / 0
25 сообщений из 71, страница 1 из 3
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Одно соединение с БД для разных окон.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]