|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
У меня есть DbContext, он выдаёт грид. Я получаю View нужной мне таблицы Код: c# 1. 2. 3. 4. 5.
и уже peopleView является источником данных для DataGrid. Пользователь что-то редактирует в этих строках, и как только строка оказывается отредактированной, у меня выполняется Код: c# 1. 2. 3. 4.
Т.е. я не контролирую то, что ввёл пользователь. DBContext сразу себе берёт всё введённое и сохраняет. Проблема выявляется с датой. СУБД у меня - SQLite. Пользователь вводит дату в одном формате, а сохраняться она должна в другом. Куда и как можно вписать прослойку, чтобы я мог полностью контролировать, что конкретно запишется в БД и в каком формате? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2018, 01:30 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласен, Тут много вариантов. Решать тебе: 1. Если десктоп(клиент-сервер), то прослойка в виде ОРМ обычно не делается. Просто перехват исключения и вывод на экран. Если бизнес логика(БЛ) на сервере, то и отправка исключения с сервера. На клиенте только перехват КОДА ИСКЛЮЧЕНИЯ. Например констрейнт-ограничение по уникальности или ФОРМАТ ДАТЫ НЕ СООТВЕТСТВУЕТ ТИПУ ПОЛЯ В БД. зы В веб проектах и ОРМ делается промежуточный слой т.к. логик обычно не в БД а на АппСервере. Не знаю насколько в шарпе умеет DbContext быть АппСервером в двухзвенке. хорошо я согласенСУБД у меня - SQLite. Пользователь вводит дату в одном формате, а сохраняться она должна в другом. если конкретно, то проверь, есть ли тип даты или ограничения в самой БД чтобы выдать наверх исключения и не сохранять так как не надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2018, 15:09 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенСУБД у меня - SQLite Значит Модель у тебя в базе. Основное в Модели - это непротиворечивость данных. Делай чтобы в базу с любого клиента нельзя было записать мусор(триггер, констрейнт, FK, PK, XP,...) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2018, 15:20 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Я поясню: пользователь пишет: 29 января. (вернее, он это может откуда-то скопировать и вставить строку в мой грид, либо использовать контрол, который выдаст ему дату в таком формате и пр.). Ему не нужен год, т.к всегда считается, что это текущий. Значит, Он пишет 29.01, а в БД должна поступить инфа 29.01.2018. Получается, что он пишет верную дату, а как её на лету скорректировать, чтобы в БД она записалась как '20180129' - не понятно. Пока решение у меня созрело такое, чтобы в ячейку впихнуть на отображение свой MyDateViewControl. Надеюсь, это верное решение. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2018, 17:35 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенПолучается, что он пишет верную дату, а как её на лету скорректировать, чтобы в БД она записалась как '20180129' - не понятно. Пока решение у меня созрело такое, чтобы в ячейку впихнуть на отображение свой MyDateViewControl. Надеюсь, это верное решение. Да. После того как все ошибочные будут отсеиваться в бд вы делаете чисто для удобства контрол, ГУИ для ввода. Это может быть свой или готовый из сети кусок библотеки. Лучше поищите что готовое прежле чем писать. В крутом гриде уже есть колонка с типом дата. Какой конкретно грид? Моё imho в том что лучше иметь поле дата и там выбирать дату, чем иметь поле строка и потом конвертировать. В крупных проектах могут делать myDataControl на все проекты сразу. IMHO ... |
|||
:
Нравится:
Не нравится:
|
|||
07.01.2018, 18:04 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
если текстовое поле связано со свойством типа DateTime, то при вводе некорректной она не будет передана в источник. Как по мне, лучше использовать контрол который ограничивает ввод даты по шаблону, так как с этими датами гемороя не оберешься 01/11/2012, это 11 января или 1 ноября? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 12:50 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Roman Mejtesесли текстовое поле связано со свойством типа DateTime, то при вводе некорректной она не будет передана в источник. Как по мне, лучше использовать контрол который ограничивает ввод даты по шаблону, так как с этими датами гемороя не оберешься 01/11/2012, это 11 января или 1 ноября? Или обычная валидация , в конце концов. Зачем тут какие-то прослойки? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 12:58 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Roman Mejtesесли текстовое поле связано со свойством типа DateTime, то при вводе некорректной она не будет передана в источник. Как по мне, лучше использовать контрол который ограничивает ввод даты по шаблону, так как с этими датами гемороя не оберешься 01/11/2012, это 11 января или 1 ноября? сверху в заголовке указано "2018" без возможности её изменения - в базу запрещено вносить любые даты за пределами этого года. Соответственно, пользователь работает только с месяцем и числом, без года. Поэтому дата "11 марта" - дата корректная. И если она не запишется в поле базы данных ("потому что не указан год") - это будет неверным поведением. Это ж SQLite. Каждый файл посвящён отдельному году. Объединения годов в одном файле не будет по разным причинам, в т.ч. потому что SQLite не выдержит большого объёма данных и потому что пользователь хочет разные года сохранять в разные файлы - ему это удобно. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 13:51 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенЭто ж SQLite. Каждый файл посвящён отдельному году. Объединения годов в одном файле не будет по разным причинам, в т.ч. потому что SQLite не выдержит большого объёма данных и потому что пользователь хочет разные года сохранять в разные файлы - ему это удобно. Подробнее. Мне кажется это полная ересь. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 13:55 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенсверху в заголовке указано "2018" без возможности её изменения - в базу запрещено вносить любые даты за пределами этого года.т.е. вы бизнес подстроили под базу? Прикольно)) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 13:58 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенSQLite не выдержит большого объёма данныхвсе базы имеют максимум. Для этого есть у всех есть штатные операции - выгрузить, архивировать, загрузить и т.д. Держите с 31 на 1 января оба года, а потом в 2019 году выгрузите любой год. Т.е. база тут ни при чем. И текущий год устанавливают не из за базы как вы тут описали. По другим причинам. ... 11 марта пишите в базу. Просто такой контрол сложнее и везде на лбу должен висеть текущий год. У меня в проекте, заказчик требовал чтобы в каждом окне висел год. Т.е. юзверь его мог сменить одним кликом. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 14:11 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Глянул базу на ветке субд. У чела база на 250 млн. Записей. Поэтому проблему автора про базу и файлы базы я не понял. А про даты тут рассмотрели все варианты. Удачи аффтару! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 14:25 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласен, понятно, что в SQLite нет типа DATETIME и Вы используете TEXT но в модели-то можно использовать DateTime, как в следующем примере свойство DayOfBirth: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31.
Код: c# 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 15:42 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
С точки зрения пользователя: Он создаёт новый файл, указывает "мероприятия за 2018 год". При создании в окне "визарда" выбирает "2018" -его не интересует 2017-й, 2019-й. В колонке "дата" его интересует только месяц-день и "вымораживает" постоянное повторение "2018", поскольку "и так ясно, о каком годе идёт речь, другого не дано". Пользователя вообще не волнуют предыдущие года, он их вообще удаляет, поэтому проблема стояла не в том, что "несколько лет не умещается в один файл". А вообще в другом: Пользователь хочет вводить в ячейку "11 января". Но эта строка напрямую улетает в БД, что неверно. В самой "БД" тип указан date и записаться "11 января" должно в формате "20180111". Вопрос был в том, как реализовать прослойку, ибо DataGrid использует таблицу из DbContext в качестве источника и всё записанное в ячейках DataGrid сразу отправляется в DbContext. Я не придумал ничего лучше, чем создать свой компонент, отображаемый в ячейке. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 15:59 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенОн создаёт новый файл, указывает "мероприятия за 2018 год". он же не знает что там какой то файл или не файл? Тебе как программисту выгодно чтобы способ хранения или физическая схема не была видна юзверю. Так? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 16:12 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенОн создаёт новый файл, указывает "мероприятия за 2018 год" У нас было так: Новый плановый ГОДОВОЙ период. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 16:13 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенпоэтому проблема стояла не в том, что "несколько лет не умещается в один файл". А вообще в другом: сам привёл пример что у тебя SQLite авторпотому что SQLite не выдержит большого объёма данных это враньё. Если бы не врал, то и разговора бы не было. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 16:15 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенЯ не придумал ничего лучше, чем создать свой компонент, отображаемый в ячейке. по фоакту, без архитектуры тебе выше сказали ещё 3-4 варианта. Хочешь скилы повышать - пробуй. До свидос! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 16:17 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Petro123он же не знает что там какой то файл или не файл? Тебе как программисту выгодно чтобы способ хранения или физическая схема не была видна юзверю. Так? Пользователь знает, что такое "экселевский" файл, "вордовский", и теперь знает, что такое "Мерпопревский" (от слова "Меропр", название программы). Есть "файл"-"открыть". Так что он очень хорошо понимает и знает, что такое файл и в одном файле он никогда не будет вести мероприятия за разные года. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 16:32 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Petro123До свидос! ну "досвидос", так "досвидос". Мне кажется, тебе показалось, что вопрос я задаю лично тебе и лично от тебя жду ответов. А ведь всё просто - если ты не хочешь отвечать или рассуждать на какую-то тему, можешь просто игнорировать. Лично я так всегда и делаю. Решения я прочитал и принял к сведению, поэтому и пишу, что хорошо я согласенпроблема сто яла P.s. как всегда, благодарен пользователям Сон Веры Павловны и Roman Mejtes за ответы и наводящие вопросы. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 16:38 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенМне кажется, тебе показалось, что вопрос я задаю лично тебе и лично от тебя жду ответов вот ведь странные. Если я сказал что досвидос, значит мне что то показалось? Если врут в топике, я сразу так и говорю: "Вы соврали". Инженеры и врачи, они знаете - такие))). А игнор у вас или неигнор - мне абсолютно пофигу. Тема то закрыта). ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 17:03 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенот слова "Меропр", название программы )) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 17:05 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Petro123, так "досвидос" же. Разве нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 17:43 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенPetro123, так "досвидос" же. Разве нет? не флуди. Иди БД изучай. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 17:51 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласен, мне кажется, что Вам будет полезно почитать http://www.sqlite.org/datatype3.html указать-то Вы DATE можете, только на деле это совсем не DATE ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 19:24 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
skyANAхорошо я согласен, мне кажется, что Вам будет полезно почитать http://www.sqlite.org/datatype3.html указать-то Вы DATE можете, только на деле это совсем не DATE да, это я понимаю. Ту страничку читал. Я могу в поле "date" вписать всё, что угодно. Разница в том, что плагины нормально с этим работать не будут (TryParse не работает) - и результат будет таким, как на скриншоте. Да и хотелось бы просто дату хранить как дату. Чтобы можно было вычислять разницу и пр. без дополнительных последующих преобразований. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 19:29 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенЯ могу в поле "date" вписать всё, что угодно. вам не доходит: автор2.2. Дата и время Тип данных SQLite не имеет класса хранения, отложенного для хранения дат и / или времени. Вместо этого встроенные функции даты и времени SQLite способны хранить даты и время как значения TEXT, REAL или INTEGER: ТЕКСТ как строки ISO8601 («ГГГГ-ММ-ДД ЧЧ: ММ: SS.SSS»). REAL, как число юлианских дней, число дней с полудня в Гринвиче 24 ноября 4714 года до н.э. согласно пролептическому григорианскому календарю. INTEGER as Unix Time, количество секунд с 1970-01-01 00:00:00 UTC. Приложения могут выбирать даты и время в любом из этих форматов и свободно конвертировать между форматами, используя встроенные функции даты и времени . значит писать в базу вы должны в совместимом формате - «ГГГГ-ММ-ДД ЧЧ: ММ: SS.SSS» ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 19:37 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Сделайте контрол который будет из 2 текст боксов, месяц день, год не указывается и задайте шаблон , я бы оформил в контрол редактирования, тогда пользователь не сможет вводить год, только месяц и день. И ограничение будет не только в бизнес логике, но и в представлении, пользователь не сможет ввести то, что не предполагается логикой, но это не освобождает от проверки на уровне бизнес логики и операций skyANA, ну в C# тоже DateTime это тоже просто ulong по факту. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 20:43 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Petro123, мне помнится, ты "о всё" говорил на предыдущей странице или что-то типа того. Roman Mejtes, Да, в итоге я в общем-то так в итоге и сделал - оформил свой контрол. Это действительно лучшее решение. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 21:03 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенмне помнится, ты "о всё" говорил на предыдущей странице или что-то типа того. ты же тоже обещал)))) LOL Я обещал что буду твои глупости подчёркивать: "потому что SQLite не выдержит большого объёма", "Я могу в поле "date" вписать всё, что угодно". Так что пиши ещё)) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 21:07 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Petro123"Я могу в поле "date" вписать всё, что угодно" С технической точки зрения - могу, данные будут успешно записаны. Вот только это неправильно, для нормальной работы необходимо писать в строгом формате, не в том, в каком удобно пользователю. В связи с чем и создан пост. SQLite не создан для хранения больших массивов данных. Для этого существуют клиент-серверные СУБД. Твой КЭП. И это. Хорош флудить. Правда. Ушёл, гордо хлопнув дверью раз: Petro123До свидос! Ушёл, гордо хлопнув дверью два Petro123А игнор у вас или неигнор - мне абсолютно пофигу. Тема то закрыта). Продолжил флуд Petro123не флуди. продолжил ёрзать на стуле Petro123Так что пиши ещё)) Посмотри в пример, как ведут общение нормальные адекватные взрослые люди - Roman Mejtes, skyANA, Сон Веры Павловны. Бери с них пример. Модератора прошу тему закрыть. Вопрос решён. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 21:21 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенС технической точки зрения - могу, данные будут успешно записаны. Вот только это неправильно, для нормальной работы необходимо писать в строгом формате, не в том, в каком удобно пользователю. В связи с чем и создан пост ну дак с этим никто не спорит. Ты обиделся что я назвал твоей придумкой про слабость БД. Ты ещё заказчику скажи, что год в глобальных переменных из за слабости БД . хорошо я согласенSQLite не создан для хранения больших массивов данных. Для этого существуют клиент-серверные СУБД. Мы же про твой проект говорим? А то некоторые подумают, что SQLite слабая база. Один пугает тормозами, второй пугает слабой БД при 250 млн.записей. Добро пожаловать в форум. Будет интересный топик - будем говорить. Ты фигню сказал - и я опять пришёл). Удачи! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 21:35 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Petro123SQLite слабая база. ну-ну. Теперь у нас SQLite - база данных. Так мог сказать только человек, который слабо разбирается в предметной области. Petro123250 млн.записей. в excel тоже можно записать 250 млн. записей - по миллиону на каждую страницу и создать 250 страниц. И посмотри на позеленевшего пользователя, который будет пытаться работать с этим файлом на своём локальном компьютере. И на тебя посмотрю, как ты заговоришь, когда тебе на офисном ноутбуке придётся выполнять запросы к БД под управлением SQLite объёмом хотя бы несколько миллионов записей. В прочем, чего я тут очевидные вещи объясняю. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 22:16 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласен, флудить на инженерные и IT темы я всегда готов) хорошо я согласенну-ну. Теперь у нас SQLite - база данных. Так мог сказать только человек, который слабо разбирается в предметной области. ниже скрин. Да ОНО в контексте форума база данных. Даже более - СУБД. Расшифровать буквы? хорошо я согласенв excel тоже можно записать 250 млн. записей Ещё раз - говори про СВОЙ проект. У тебя сколько записей? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 22:27 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Petro123Да ОНО в контексте форума база данных. Даже более - СУБД. Расшифровать буквы? Нет. SQLite - не база данных. B я очень надеюсь, ты сам для себя расшифруешь СУБД, а также выучишь мат.часть, исследовав разницу между БД и СУБД. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 22:36 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласен, у меня в проекте на данной базе вся карта РФ прекрасно работает с такой штукой Что такое DotSpatial? DotSpatial - это библиотека географической информационной системы, написанная для .NET 4. Она позволяет разработчикам включать в свои приложения функции пространственных данных, анализа и отображения, а также вносить дополнения в GIS для сообщества. Д-р Дэн Эймс является менеджером проекта DotSpatial. DotSpatial предоставляет элемент управления картой для .NET и несколько возможностей ГИС, включая: Отображение карты в .NET Windows Forms или веб-приложении. Открытые шейп-файлы, сетки, растры и изображения. Отобразить символику и ярлыки Репроект «на лету» Манипулировать и отображать данные атрибута Научный анализ Чтение данных GPS Так что не надо гнать на на данную БД. Она хорошая). ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 22:40 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенНет. SQLite - не база данных. значит ты буквоед. Такие бывают. Мне не интересно. Ещё что есть интересного? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 22:41 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
да никто на неё не гонит. Я её выбрал, т.к. пользователю удобно работать с файлами, а не подключаться к серверу и данных не так много (и активность работы с ними не такая большаяя), чтобы была необходимость использования клиент-серверной архитектуры. Вопрос-то вообще в другом был. Причём тут вообще болтовня о выборе СУБД? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 22:44 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенПричём тут вообще болтовня о выборе СУБД? ну ты же писал: "SQLite слабая база" "ну-ну. Теперь у нас SQLite - база данных. Так мог сказать только человек, который слабо разбирается в предметной области" Я поржал. А тебя наверно Мама всегда только по головке гладила. И ты в бутылку полез. Бывает. Заканчивай. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 22:49 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Roman MejtesskyANA, ну в C# тоже DateTime это тоже просто ulong по факту. Рекомендую Вам ссылку тоже глянуть. Разница гораздо значительнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 22:53 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Petro123хорошо я согласенмне помнится, ты "о всё" говорил на предыдущей странице или что-то типа того. Я обещал что буду твои глупости подчёркивать: "Я могу в поле "date" вписать всё, что угодно". И в чем тут глупость? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 23:00 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Слушай, а ты не из тех, кто монитор называет компьютером, а системный блок процессором? Во-первых, я не писал "SQLite слабая база". Такую дурь мог выкурить написать только ты. При работе под SQLite с большим объёмом данных у пользователя клиентское приложение будет зависать и тормозить, задача работы с большими объёмами данных должна быть возложена на сервер. Я не завидую пользователям, которым придётся работать с программками, которые напишешь ты. "SQLite может обеспечить работу с базой в 250 млн записей!", - аргументировал Петя заказчику, а то, что ноуты не способны адекватно работать с таким объёмом данных до глянцевого мозга Пети не дошло и никогда не дойдёт. Петя засрёт весь форум, но не признает своей некомпетентности. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 23:01 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
у нас ещё один спорщик появился) хорошо я согласенВо-первых, я не писал "SQLite слабая база". Такую дурь мог выкурить написать только ты. ты написал: хорошо я согласенЭто ж SQLite. Каждый файл посвящён отдельному году. Объединения годов в одном файле не будет по разным причинам, в т.ч. потому что SQLite не выдержит большого объёма данных и потому что пользователь хочет разные года сохранять в разные файлы - ему это удобно Вот я я только против красного возражал)) хорошо я согласенПри работе под SQLite с большим объёмом данных ты у меня хрен флудить будешь. В этом топике нет разговора о больших данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.01.2018, 23:08 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Что и требовалось доказать. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2018, 00:21 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
хорошо я согласенПри работе под SQLite с большим объёмом данных у пользователя клиентское приложение будет зависать и тормозить Ну, если плохо писать программу, то она будет зависать. хорошо я согласензадача работы с большими объёмами данных должна быть возложена на сервер. и тогда у такого же программиста, у которого загрузка из локальной БД вешает программу, клиент будет зависать в ожидании данных по сети от сервера. хорошо я согласен"SQLite может обеспечить работу с базой в 250 млн записей!", - аргументировал Петя заказчику, а то, что ноуты не способны адекватно работать с таким объёмом данных до глянцевого мозга Пети не дошло и никогда не дойдёт. типа sql server на таком ноуте волшебным образом летать будет, потому что там взрослый клиент-сервер и всё такое? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2018, 10:51 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Pu4koff, Пускай в ветку бд зайдет. И там попробует повякать про плохую БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2018, 11:03 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
SQLite отличная локальная СУБД, но оптимизация у меня заняла много времени, проблема была не в индексах, а в случайном доступе на DVD и мелкие другие, в остальном проблем нет, работает всё быстро. всё есть, план выполнения можно посмотреть, сжатие базы есть, все типы C# есть, ни каких монстров ставить не нужно. из недостатков: Нет процедур, триггеров и прочей нямки, но далеко не всегда это нужно, транзакции есть, всё остальное нужно просто реализовать через файлы\инлайн запросы. я использовал базы размером не более 4гб, что очевидно, не самый большой размер для базы, но как мне кажется, справился бы и с большим размером без труда. На фоне MSSQL сервера SQLite и другие файловые локальные субд кажутся Давидом против Голиафа, сравнивать их просто неэтично. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2018, 15:03 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Roman Mejtes, Меня убило что типа даты нет, но через API все для даты есть. А физически, пусть хоть в музыкальных нотах хранит). ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2018, 15:13 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Petro123, что значит нет даты? дата в SQLite есть, физически это ulong как и в любом другом месте. Есть методы для работы с датами. На уровне процессора на много быстрее и оптимальнее работать с датой как с числом. Но в базе есть тип даты и времени, с чего вы взяли, что его там нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2018, 15:20 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Roman Mejtes, По ссылке же. Другая парадигма - класс хранения и тип данных. А не тип поля DDL date. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2018, 15:41 |
|
Как сделать прослойку между гридом и DbContext?
|
|||
---|---|---|---|
#18+
Roman MejtesPetro123,
... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2018, 17:24 |
|
|
start [/forum/topic.php?all=1&fid=21&tid=1440456]: |
0ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
176ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
71ms |
get tp. blocked users: |
1ms |
others: | 239ms |
total: | 531ms |
0 / 0 |