powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Работа с выгруженными данными, не обращаясь к серверу. С#
23 сообщений из 23, страница 1 из 1
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38792515
Mihail3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток. Пишу прогу на Visual C# в связке с MS SQL Server 2008. И у меня возникла необходимость один раз выгрузить необходимые таблицы из бд в прогу и больше к нему не обращаться. Выгружаю в dataSet и при необходимости фильтрации данных опять делаю запрос к бд. А хотелось бы один раз сделать и все.
Как это реализуется? Может Есть у кого пример или через какой инструмент? Мне хотя бы наводку или пример,а дальше сам разберусь.. Заранее спасибо)
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38792566
VIT2708_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Mihail3,

А как ты будешь сохранять или обновлять данные, или как другой пользователь узнает что данные уже устарели?

Но если загрузил все в dataSet то и запросы давай в dataSet а не в БД
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38792574
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mihail3И у меня возникла необходимость
откуда она возникла?
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38792581
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилMihail3И у меня возникла необходимость
откуда она возникла?Данный архитектурный тупик обычно возникает из-за невозможности или нежелания наладить нормальные корпоративные каналы связи, что в наше время всепроникающего интернета является абсолютной глупостью.
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38793085
Mihail3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VIT2708_Mihail3,
А как ты будешь сохранять или обновлять данные, или как другой пользователь узнает что данные уже устарели?
Но если загрузил все в dataSet то и запросы давай в dataSet а не в БД

Получается только строками в DataRow[] выгрузить по определенному условию.. Но мне это не подходит..

Алексей КИзопропилпропущено...
откуда она возникла?Данный архитектурный тупик обычно возникает из-за невозможности или нежелания наладить нормальные корпоративные каналы связи, что в наше время всепроникающего интернета является абсолютной глупостью.

Необходимость в связи с и без того большой нагрузки на сервер.
Немного уточнения. Это для Кладра.
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38793090
Mihail3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хотелось бы научиться оперировать с таблицами в программе с такой же легкостью, как Visual FoxPro например, я понимаю, что это уже субд. А сколько в интеренте не искал, так ничего дельного не нашел, как делать новые выборки из ДатаСетов, ДатаТаблов и тд. тп..
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38793125
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mihail3,

.. может, вы имеете в виду что-то типа выгружать данные в List<Object>, а к нему применить LINQ ? ... если я правильно понял ...
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38793278
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mihail3,

а между запросами к страницам где это добро хранить собираетесь?

выгрузите это добро (КЛАДР/ФИАС) в отдельную базу и ни в чём себе не отказывайте
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38793341
VIT2708_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Mihail3VIT2708_Mihail3,
А как ты будешь сохранять или обновлять данные, или как другой пользователь узнает что данные уже устарели?
Но если загрузил все в dataSet то и запросы давай в dataSet а не в БД

Получается только строками в DataRow[] выгрузить по определенному условию.. Но мне это не подходит..




А можна подробнее как должно быть?
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38793542
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если правильно понял, то что Вы хотите сделать подпадает под понятие - репликации. В студии есть шаблон реплицируемого проекта на базе SQL Server Ce. В само приложение добавляется база SQL Server Ce которая реплицируется с главным SQL Server. Пользователь работает с локальной БД а затем вывполняется ее синхронизация с БД на сервере. Ваще этот маханизм придумали для мобильных приложений, которые не всегда имеют доступ к серверу, но и в Вашем варианте думаю это прокатит.
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38795873
Mihail3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вообщем, что я имею ввиду.
Мне хотелось бы:

SqlConnection cn = new SqlConnection("Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=www;Data Source=sql.www.local");
cn.Open();
string querry = @"SELECT Distinct(name), count, type, code FROM [Data].[dbo].[Names]";
SqlDataAdapter adapter = new SqlDataAdapter(querry, cn);
adapter.Fill(ds, "1");
Вот я выгрузил в DataSet таблицу из бд, а как мне теперь из DataSet выгрузить данные с определенным условием, например где type=2 и поместить в comboBox. Выгрузить в DataRow нельзя так, как у comboBox я планирую использовать одно значение из таблицы как DisplayMember, а другое как ValueMember ..
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38795875
Mihail3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Или может у кого-то есть проект для работы с Кладр, хотелось бы почитать и посмотреть, как это реализовывается на C#
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38795880
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mihail3, воспользуйтесь методом DataTable.Clone(), заполните получившуюся таблицу отфильтроваными данными и используйте в качестве DataSource для ComboBox.
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38795881
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mihail3,

где DataSet хранить то будете?
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38795922
dvim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mihail3,
Для вас написали Linq

Грузим данные в datatable 1 раз
Далее, при необходимости, делаем к ней запросы через Linq.
У этого подхода есть свои плюсы и минусы, но делать так можно.
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38795947
17-77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mihail3,
вы не знаете как веб работает? это запрос ответ - запросил данные - получил, хочешь еще - запроси снова
если очччень хочется - то нужен кеш
* либо на стороне клиента, т.е. в браузере, но там Visual C# и не пахнет
* либо на стороне сервера - например в Session/Application/System.Runtime.Caching
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38795955
17-77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ps но в случае кеша на сервере - запросами ответами к серверу не обойтись

правильно же я понял, что вам надо избавиться от постоянных обращений к базе к таблицам кладра?
один раз считать эту таблицу(ы) и хранить в памяти компа, и перенаправить все запросы к этому участку памяти?
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38796306
Mihail3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
17-77,
Да. Понимаете правильно.

Я либо, что то не понимаю, либо хз.
Мне хочется сделать так:
1.Выгрузил все таблицы в DataSet1.
2. Выгружать в DataTable или новый DataSet из DataSet1 в соответствии с условиями Where. Не в DataRow, а именно в DataTable или DataSet.
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38796372
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mihail317-77,
Да. Понимаете правильно.

Я либо, что то не понимаю, либо хз.
Мне хочется сделать так:
1.Выгрузил все таблицы в DataSet1.
2. Выгружать в DataTable или новый DataSet из DataSet1 в соответствии с условиями Where. Не в DataRow, а именно в DataTable или DataSet.

.. тогда, как уже заметили выше - клонировать/копировать в новую DataTable через ImportRow, например, с помощью foreach с проверкой на соответствие фильтру (напр. .Contains() ) ...
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38796402
Mihail3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
То есть, что то вроде этого:

DataTable dtTarget = new DataTable();
dtTarget = dtSource.Clone();
DataRow[] rowsToCopy;
rowsToCopy = dtSource.Select("key=2");
foreach (DataRow temp in rowsToCopy)
{
dtTarget.ImportRow(temp);
}

И не будет ли так медленнее, чем обратиться к серверу еще раз?
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38796431
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mihail3То есть, что то вроде этого:

DataTable dtTarget = new DataTable();
dtTarget = dtSource.Clone();
DataRow[] rowsToCopy;
rowsToCopy = dtSource.Select("key=2");
foreach (DataRow temp in rowsToCopy)
{
dtTarget.ImportRow(temp);
}

И не будет ли так медленнее, чем обратиться к серверу еще раз?

...насчет медленнее - пробовать надо ... но, кстати, на этом форуме уже обсуждались темы типа LINQ vs foreach, и были ссылки на замеры - форич часто был быстрее ...
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38796438
carrotik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
... кстати, после ImportRow не забудьте .AcceptChanges()
...
Рейтинг: 0 / 0
Работа с выгруженными данными, не обращаясь к серверу. С#
    #38796473
Mihail3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасиб, сейчас еще поищу инфу..
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Работа с выгруженными данными, не обращаясь к серверу. С#
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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