powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / инициализация Dictionary из БД
21 сообщений из 21, страница 1 из 1
инициализация Dictionary из БД
    #39861295
RegisteredUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Коллеги!
Подскажите как это сделать с помощью Dictionary.
В коде зашит Dictionary, который хранит зависимость цены от веса и размера.
int - это вес
string - это размер
float - это цена

Не спрашивайте почему так сделано, так вот нужно )))
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
        Dictionary<int, Dictionary<string, float>> PriceByWeightSize()
        {
            return new Dictionary<int, Dictionary<string, float>>()
            {
                { 0, new Dictionary<string, float>() { { "XS", 11 }} },
                { 1, new Dictionary<string, float>() { { "S", 22 }} },
                { 2, new Dictionary<string, float>() {{ "M", 33 }} },
                { 5, new Dictionary<string, float>() {{ "L", 44 }} },
                { 10, new Dictionary<string, float>() {{ "XL", 55 }} },
                { 15, new Dictionary<string, float>() {{ "XXL", 66 }} },
                { 30, new Dictionary<string, float>() {{ "XXXL", 77 }} }
            };
        }


сейчас надо эти данные брать из БД

Вопрос:
Можно как-то проинициализировать все эти три параметра из БД
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39861346
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно.

А вопрос-то в чем?
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39861374
RegisteredUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.ProМожно.

А вопрос-то в чем?

вот в том-то и вопрос - как проинициализировать дикшенери из бд

примерчик кода был бы в тему
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39861390
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БД понятие растяжимое, поэтому совершенно непонятно, какой пример кода ты хочешь? Может ты не знаешь как подключиться к базе, может ты не знаешь про ToDictionary[Async], а может у тебя вообще пока нет БД и ты не смог построить архитектуру или выбрать ORM или вообще принцип доступа к ней, может у тебя там вообще NoSQL.... дальше гадать?
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39861408
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RegisteredUser,

что за БД? как там лежат данные (схема)? чем, или каким запросом выбираются?
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39861449
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
такой алгоритм мягко говоря д...мо.
потому, что при чтении каждой записи, вам надо будет проверять наличия элемента в справочнике, а затем еще раз проверять наличие элемента в подсправочнике, городить страшно неудобные конструкции и т.д.
Как вариант можно глянуть на IEnuemrable.Lookup, но лучше использовать EF или ему подобное, там всё уже реализовано
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39861454
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes,

можно и не проверять, если данные отсортированы должным образом
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39861557
RegisteredUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.ProБД понятие растяжимое, поэтому совершенно непонятно, какой пример кода ты хочешь? Может ты не знаешь как подключиться к базе, может ты не знаешь про ToDictionary[Async], а может у тебя вообще пока нет БД и ты не смог построить архитектуру или выбрать ORM или вообще принцип доступа к ней, может у тебя там вообще NoSQL.... дальше гадать?
БД - SQL Server
Entity Framework
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39861569
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну вот, уже ближе.
метод ToDictionaryAsync() тебе в руки
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39861612
RegisteredUser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.ProНу вот, уже ближе.
метод ToDictionaryAsync() тебе в руки

спасибо за хинт
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39862519
L.Otujktd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
RegisteredUser,

Если без orm то я бы реализовал IDictionary и спрятал код получения данных внутрях реализации
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39862520
L.Otujktd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
RegisteredUser,

{ 0, new Dictionary<string, float>() { { "XS", 11 }} } 0- это значение для группы
размеров, как я понимаю?
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39862562
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L.OtujktdRegisteredUser,

Если без orm то я бы реализовал IDictionary и спрятал код получения данных внутрях реализации
Словарь, что самостоятельно выполняет запросы к определённой базе данных за ценами, весами и размерами?
И как бы вы назвали такой класс?
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39862566
L.Otujktd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot Дмитрий Мух]L.OtujktdRegisteredUser,

Если без orm то я бы реализовал IDictionary и спрятал код получения данных внутрях реализации
Словарь, что самостоятельно выполняет запросы к определённой базе данных за ценами, весами и размерами?
И как бы вы назвали такой класс?[/quot
А что ему мешает? Это смотря как реализовать
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39862572
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L.OtujktdДмитрий МухL.OtujktdRegisteredUser,

Если без orm то я бы реализовал IDictionary и спрятал код получения данных внутрях реализации
Словарь, что самостоятельно выполняет запросы к определённой базе данных за ценами, весами и размерами?
И как бы вы назвали такой класс?
А что ему мешает? Это смотря как реализовать
Дак и как бы вы назвали такой класс?
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39862573
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L.Otujktd,

и он бы у вас при вызове метода Add писал бы в базу, при Remove - удалял из неё?
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39862635
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RegisteredUserShocker.ProНу вот, уже ближе.
метод ToDictionaryAsync() тебе в руки

спасибо за хинт

вау, донт мэншын
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39862636
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RegisteredUserКоллеги!
Подскажите как это сделать с помощью Dictionary.
В коде зашит Dictionary, который хранит зависимость цены от веса и размера.
int - это вес
string - это размер
float - это цена

Не спрашивайте почему так сделано, так вот нужно )))
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
        Dictionary<int, Dictionary<string, float>> PriceByWeightSize()
        {
            return new Dictionary<int, Dictionary<string, float>>()
            {
                { 0, new Dictionary<string, float>() { { "XS", 11 }} },
                { 1, new Dictionary<string, float>() { { "S", 22 }} },
                { 2, new Dictionary<string, float>() {{ "M", 33 }} },
                { 5, new Dictionary<string, float>() {{ "L", 44 }} },
                { 10, new Dictionary<string, float>() {{ "XL", 55 }} },
                { 15, new Dictionary<string, float>() {{ "XXL", 66 }} },
                { 30, new Dictionary<string, float>() {{ "XXXL", 77 }} }
            };
        }


сейчас надо эти данные брать из БД

Вопрос:
Можно как-то проинициализировать все эти три параметра из БД


не спрашиваю зачем, видимо, так вот нужно, но нахрена там внутренний Dictionary?
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39863058
L.Otujktd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмитрий МухL.Otujktd,

и он бы у вас при вызове метода Add писал бы в базу, при Remove - удалял из неё?
IReadonlyDictionary в связке с lazy<t>. Про запись в бд разговора не идёт, насколько я понимаю из постановки задачи ;)
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39863201
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
L.Otujktd,

тогда какая-то нелепая реализация интерфейса IDictionary выйдет на мой взгляд :)
...
Рейтинг: 0 / 0
инициализация Dictionary из БД
    #39863333
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может просто тип с индексатором сделать :D
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / инициализация Dictionary из БД
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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