powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Sa посоветуй пжлста. Как поступить с базой и датасетом.
3 сообщений из 3, страница 1 из 1
Sa посоветуй пжлста. Как поступить с базой и датасетом.
    #32463474
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день.

У меня есть база на акесе. Таблиц всего 17. Все они связаны м/у собой.
Как мне лучше сделать?
Все загрузить в один ДатаСет и сделать его паблик. Чтобы можно было к его таблицам обращаться. Можно взять формВизард и указать связи м/у таблицами в этом датасете. Смысл в том, чтоб будет куча форм, в которых будет происходить работа с базой, добавление, изменение и т.д.

Что скажешь?
...
Рейтинг: 0 / 0
Sa посоветуй пжлста. Как поступить с базой и датасетом.
    #32463850
Sa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вариантов туча и трудно дать однозначно правильнее решение, надо все изучать детально.

Можно сделать один DataSet, обеспечить доступность класса для всех объектов приложения (то есть ГЛОБАЛЬНЫЙ ЕДИНСТВЕННЫЙ DataSet). Обернув его классом - добавить дополнительную функциональность.

Можно абстрагироваться от БД создав свои классы реализующие CRUD операции (Create, Read, Update, Delete), и вынести работу с БД в DLL.

Можно и абстрагироваться от DataSet подменив его своими классами (тут появляются килотоны кода)

И т.д. вариантов невообразимое количество

Но:
Я бы не стал загружать ВСЕ записи и все бы делал только по требованию пользователя - стали нужны ему такие то данные загрузил их (опять повторюсь не ВСЕ записи). Отработал он с ними, сказал ОК тогда записал изменения в БД и т.д. Думаю идея понятна.

По опыту - Для маленьких или тестовых приложений можно достаточно удобно , эффективно и быстро организовать работу c DataSet или несколькими DataSetами (при этом затратив минимум усилий), сосредоточив и логику РАБОТЫ С ДАННЫМИ, и ИНТЕРФЕЙС приложения в одном проекте и даже особо не распылясь по классам. Например можно прямо в классе формы реализовать что подобное (код утрирую):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
private void BindData()
{
  this.dataGrid1.DataSource = CreateOrderDetailsDataSet();
}

private DataSet CreateOrderDetailDataSet()
{
  DataSet ds = new DataSet();
  // создал Connection, Command, DataAdapter
  // заполнил DataSet
....
  return ds; // Вернул DataSet
}


Что касается меня и варианта с использованием одного public ДатаСет (напоминает мне чем то логику работы с данными из Delphi) ,то я лично так не делаю А в противовес формирую необходимые данные на лету, не создавая чего либо предварительно (в моих задачах такая логика терпит, а памяти расходуется меньше)

Вам совет - выбирайте тот вариант какой вам удобнее, ведь вам еще предстоит отлаживать и сопровождать эту программу :-)

P.S. Так много написал и почти ничего конкретного :-) Ведь у каждого способа есть свои плюсы и минусы и трудно поставить флаг и сказать делать только так и не иначе.
...
Рейтинг: 0 / 0
Sa посоветуй пжлста. Как поступить с базой и датасетом.
    #32463981
Фотография # Darth Vader #
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну отчего же, много полезного ты сказал, спасибо.

Прога будет работать на мощном компе. Так что с памятью проблем не будет.

Позже зайду и спрошу тебя кое о чем.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Sa посоветуй пжлста. Как поступить с базой и датасетом.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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