Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Type
|
|||
|---|---|---|---|
|
#18+
Как подставить тип document в IMongoCollection<T> ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 08:50 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, Не понял, что хочешь сделать? Что не получается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 09:34 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttmr_max, Не понял, что хочешь сделать? Что не получается? сейчас стоит IMongoCollection<Request> зашито под конкретный класс, а я хочу сделать универсально, подставлять класс в IMongoCollection в зависимости от типа переменной document. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 09:36 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxсейчас стоит IMongoCollection<Request> зашито под конкретный класс, Оно не «зашито», они известно на этапе компиляции, со всеми вытекающими плюшками, типа проверки типов, интеллисенса, статического выбора логики на основе известного типа. mr_maxа я хочу сделать универсально, подставлять класс в IMongoCollection в зависимости от типа переменной document. Generic-тип можно состряпать во время исполнения. Но имеет ли это смысл? Ни интеллисенса, ни статической проверки типов, ни других плюшек от шаблонов ты не получишь. Зачем? Покажи, для чего конкретно тебе это надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 10:25 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttmr_maxсейчас стоит IMongoCollection<Request> зашито под конкретный класс, Оно не «зашито», они известно на этапе компиляции, со всеми вытекающими плюшками, типа проверки типов, интеллисенса, статического выбора логики на основе известного типа. mr_maxа я хочу сделать универсально, подставлять класс в IMongoCollection в зависимости от типа переменной document. Generic-тип можно состряпать во время исполнения. Но имеет ли это смысл? Ни интеллисенса, ни статической проверки типов, ни других плюшек от шаблонов ты не получишь. Зачем? Покажи, для чего конкретно тебе это надо. Т.е. мой вариант не так уж и плох? Мне это нужно для генерация ИД для монги. И эту функцию могут вызывать разные коллекции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 10:34 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, Код: c# 1. 2. 3. 4. P. S. есть же возможность вставлять нормальный C# код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 10:59 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВmr_max, Код: c# 1. 2. 3. 4. P. S. есть же возможность вставлять нормальный C# код. Я наследуюсь от этого интерфейса, там нет этого метода ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 11:20 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, Открой для себя методы расширения . P. S. ну ёлы палы, научись вставлять форматированный C# код, который можно будет скопировать! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 11:37 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВmr_max, Открой для себя методы расширения . P. S. ну ёлы палы, научись вставлять форматированный C# код, который можно будет скопировать! Дело в том, что монга использует этом метод для генерации Id, она не будет мой использовать. Код: c# 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 11:39 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxМне это нужно для генерация ИД для монги. И эту функцию могут вызывать разные коллекции. Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 12:18 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, используешь так: GenerateId<Request>(contaner, document) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 12:18 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttmr_max, используешь так: GenerateId<Request>(contaner, document) под каждый класс использовать этот метод? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 13:12 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, если ты заменишь определение object GenerateId<T>(object container, object document) на object GenerateId<T>(IMongoCollection<T>container, T document) то указывать <Request> будет не нужно, но типы всё равно должны быть известны. или показывай конечный кейс использования. до сих пор непонятно чего ты хочешь. если тебе дженерики не нужны, с чем же ты вообще там работаешь в монге? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 13:22 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttobject GenerateId<T>(IMongoCollection<T>container, T document) По его коду document нужен только для определения типа, а тут он уже есть, параметр T document в топку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 14:16 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, и не будет, оставь один метод и добивай его ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 14:50 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВ, это чтобы тип выводился из вызова автоматически ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 14:50 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttmr_max, и не будет, оставь один метод и добивай его Получается надо некий switch делать и подставлять модель в ручную в IMongoCollection<T>? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 14:59 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, зачем? модель может выводиться автоматически, в варианте object GenerateId<T>(IMongoCollection<T>container, T document) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.10.2016, 15:31 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
5-й год как использую MongoDB + C# и не понимаю, зачем Вам все эти танцы.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2016, 11:09 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
А как вы сделаете id для заявки чтобы не был гуид а был номер по порядку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2016, 15:04 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxА как вы сделаете id для заявки чтобы не был гуид а был номер по порядку Зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2016, 15:41 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxА как вы сделаете id для заявки чтобы не был гуид а был номер по порядку Тупо инкремент? У нас так :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2016, 19:06 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANA, да инкремент чтобы ссылка была /requests/purchase/23 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2016, 19:26 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, не рекомендуется изменять механизм генерации стандартного идентификатора, а если очень надо, лучше засунуть свой автоинкремент в уникальный индекс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2016, 20:26 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttmr_max, не рекомендуется изменять механизм генерации стандартного идентификатора, а если очень надо, лучше засунуть свой автоинкремент в уникальный индекс. интересно почему? дело в том, что механизм IdGenerator работает только для одного поля коллекции ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.10.2016, 20:33 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxинтересно почему? Ну почитай, для каких целей создавалась MongoDB, в чём её преимущество перед другими СУБД, и почему идентификаторы для объектов генерятся более сложным и хитрым образом, чем обычный инкремент. mr_maxдело в том, что механизм IdGenerator работает только для одного поля коллекции Ты можешь добавить своё числовое поле и назначить уникальный индекс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2016, 01:09 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttmr_max, не рекомендуется изменять механизм генерации стандартного идентификатора, а если очень надо, лучше засунуть свой автоинкремент в уникальный индекс. Кем не рекомендуется? В официальной документации написано: MongoDB reserves the _id field in the top level of all documents as a primary key. _id must be unique, and always has an index with a unique constraint. However, except for the unique constraint you can use any value for the _id field in your collections . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2016, 08:44 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANA, http://stackoverflow.com/questions/8561485/are-ids-objectids-from-mongo-safe-to-use-in-a-url Не вижу смысла заморачиваться со своим генератором, если коробочное решение отлично подходит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2016, 18:58 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttskyANA, http://stackoverflow.com/questions/8561485/are-ids-objectids-from-mongo-safe-to-use-in-a-url Не вижу смысла заморачиваться со своим генератором, если коробочное решение отлично подходит. Оно не подходит, оно не делает адреса (/products/3 or /users/42 or whatever). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2016, 19:06 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, Я пока не понимаю почему нужны именно такие адреса, ноги у этих /3, /43 и т.д. растут из автоинкрементных ключей реляционных баз данных. Если ты используешь другую БД, то можешь с таким же успехом пользоваться не числовыми ключами, нативными ключами, у монги они подходят для использования в URL. Ничего и ни для кого не поменяется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2016, 19:33 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, Вообще в URL надо бы использовать ЧПУ, а не идентификаторы. Особенно для таких сущностей, как товары, продукты и т.п. Подумай над этим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2016, 19:35 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVostt, Это удобно для юзера, чтобы ему легче было использовать этот идентификатор заявки. А это и есть чпу с человеческим идентификатором нежели гуидом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2016, 19:49 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxЭто удобно для юзера, чтобы ему легче было использовать этот идентификатор заявки. Это как? По телефону диктовать? п как русская эр, английская эр, о, д, у, к, т, потом косая, потом 3 Ну ладно, дело ваше как говорится. ЧПУ нужен не столько для людей, сколько для поисковых машин. Автоинкрементные ID не безопасны, так как раскрывают некоторую информацию о данных, которую чужим знать не стоит, их можно перебирать и вообще я считаю, что автоинкременты в URL надо избегать по многим соображениям. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2016, 21:10 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttmr_maxЭто удобно для юзера, чтобы ему легче было использовать этот идентификатор заявки. Это как? По телефону диктовать? п как русская эр, английская эр, о, д, у, к, т, потом косая, потом 3 Ну ладно, дело ваше как говорится. ЧПУ нужен не столько для людей, сколько для поисковых машин. Автоинкрементные ID не безопасны, так как раскрывают некоторую информацию о данных, которую чужим знать не стоит, их можно перебирать и вообще я считаю, что автоинкременты в URL надо избегать по многим соображениям. Хорошо, а что делать с номер заявки или заказа? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2016, 23:29 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxХорошо, а что делать с номер заявки или заказа? В одном из проектов мы генерировали номер заказа распределёнными номерами по шаблону (например, Z-XXXXXX, где Z латинская буква, меняющаяся раз в месяц, а X произвольные цифры), каждый следующий номер заказа никак не был связан с номером предыдущего. Это позволяло скрыть возможность хоть как-то выяснить количество созданных заказов чужими людьми и при этом не мешало нормально с ними работать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 00:21 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxhVostt, Это удобно для юзера, чтобы ему легче было использовать этот идентификатор заявки. А это и есть чпу с человеческим идентификатором нежели гуидом. А почему не номер заявки? А если завтра заявки начнутся разделяться по некому признаку и надо будет иметь префикс в номере заявки? Плюс по каждому признаку своя нумерация понадобится? Я бы не стал зашиваться на идентификатор документа в коллекции. Равно как и на идентификатор записи в таблице. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 09:49 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxhVosttпропущено... Это как? По телефону диктовать? п как русская эр, английская эр, о, д, у, к, т, потом косая, потом 3 Ну ладно, дело ваше как говорится. ЧПУ нужен не столько для людей, сколько для поисковых машин. Автоинкрементные ID не безопасны, так как раскрывают некоторую информацию о данных, которую чужим знать не стоит, их можно перебирать и вообще я считаю, что автоинкременты в URL надо избегать по многим соображениям. Хорошо, а что делать с номер заявки или заказа? Генерировать (тем более генератор Вы уже вроде как написали) :) Но для начала понять, что номер заявки - это одно, а идентификатор документа - другое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 09:54 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxпропущено... Хорошо, а что делать с номер заявки или заказа? Генерировать (тем более генератор Вы уже вроде как написали) :) Но для начала понять, что номер заявки - это одно, а идентификатор документа - другое.так этот номер и идентификатор в моем случае одно и тоже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 10:12 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAпропущено... Генерировать (тем более генератор Вы уже вроде как написали) :) Но для начала понять, что номер заявки - это одно, а идентификатор документа - другое.так этот номер и идентификатор в моем случае одно и тоже. А что Вам мешает сделать для номера заявки отдельное поле? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 10:20 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, и вообще проблема-то у Вас ещё осталась? Генератор Вы вроде как написали. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 10:23 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_max, и вообще проблема-то у Вас ещё осталась? Генератор Вы вроде как написали. Все работает, вопрос был в том, что как бы там написать генератор, чтобы не использовать switch ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 11:17 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, Обнаружил кое-что интересное ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 15:20 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAmr_max, и вообще проблема-то у Вас ещё осталась? Генератор Вы вроде как написали. Все работает, вопрос был в том, что как бы там написать генератор, чтобы не использовать switch В статье это показано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 15:25 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxmr_max, Обнаружил кое-что интересное И что же? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 15:26 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxmr_max, Обнаружил кое-что интересное И что же? В какой статье? в том что идентификатор содержит в себе сколько всего офигеть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 15:30 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAпропущено... И что же? В какой статье? 19813066 mr_maxв том что идентификатор содержит в себе сколько всего офигеть. ИМХО полезно начинать знакомство с новым продуктом с чтения документации по нему: https://docs.mongodb.com/v3.2/reference/method/ObjectId/ :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 16:04 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxпропущено... В какой статье? 19813066 mr_maxв том что идентификатор содержит в себе сколько всего офигеть. ИМХО полезно начинать знакомство с новым продуктом с чтения документации по нему: https://docs.mongodb.com/v3.2/reference/method/ObjectId/ :) Да разобрался, кто-нибудь это использует? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 16:05 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxДа разобрался, кто-нибудь это использует? Это нужно для шардинга, чтобы не заморачиваться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2016, 07:52 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVostt В одном из проектов мы генерировали номер заказа распределёнными номерами по шаблону (например, Z-XXXXXX, где Z латинская буква, меняющаяся раз в месяц, а X произвольные цифры), каждый следующий номер заказа никак не был связан с номером предыдущего. Это позволяло скрыть возможность хоть как-то выяснить количество созданных заказов чужими людьми и при этом не мешало нормально с ними работать. В латинском всего 26 букв, переходи на китайский! P. S. Для больничных листов вроде как используется специальный алгоритм для генерации номеров, что обеспечивает проверку того, что либо такой номер уже был, либо вообще никогда не может быть, либо что лист нормальный. Для защиты от подделок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2016, 11:53 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttskyANA, Кто здесь? Шардинг и без ObjectId можно прекрасно реализовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2016, 12:20 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
И потом шардинг разве нужен ТС-у? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2016, 12:20 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAhVosttskyANA, Кто здесь? Шардинг и без ObjectId можно прекрасно реализовать. Можно. Но я ж не зря добавил «без заморочек». skyANAИ потом шардинг разве нужен ТС-у? :) Тогда смысл использования монги немного меркнет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2016, 12:28 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttТогда смысл использования монги немного меркнет. Насколько я помню ТСу понадобилось Schemaless. Ну и ещё наверное что-нибудь новенькое пощупать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2016, 17:38 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
А вообще монгу используют ой как по разному :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2016, 17:40 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
делаю заявки на закупки, как лучше продукты хранить вместе с заявкой или в отдельной коллекции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 09:26 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, я бы хранил вместе с заявкой, так как заявка со своими потрохами является одним цельным документом, и если что-то где-то когда-то поменяется, заявка должна остаться в неизменном состоянии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 09:44 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttmr_max, я бы хранил вместе с заявкой, так как заявка со своими потрохами является одним цельным документом, и если что-то где-то когда-то поменяется, заявка должна остаться в неизменном состоянии. к примеру она будет храниться в поле products, можно ли туда добавлять в конец новый элемент? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 09:45 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxhVosttmr_max, я бы хранил вместе с заявкой, так как заявка со своими потрохами является одним цельным документом, и если что-то где-то когда-то поменяется, заявка должна остаться в неизменном состоянии. к примеру она будет храниться в поле products, можно ли туда добавлять в конец новый элемент? можно конечно, и удалять можно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 09:46 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttmr_maxпропущено... к примеру она будет храниться в поле products, можно ли туда добавлять в конец новый элемент? можно конечно, и удалять можно Так заявки будут универсальными т.е. коллекция requests для всех видов заявок на закупку, на техподдержку и т.д. получается если делать pco модель, то туда надо будет и products лепить, а этот поле в других заявок не нужна. может все таки лучше вынести? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 10:03 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxделаю заявки на закупки, как лучше продукты хранить вместе с заявкой или в отдельной коллекции. Лучше в реляционной СУБД с поддержкой транзакций. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 10:13 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxТак заявки будут универсальными т.е. коллекция requests для всех видов заявок на закупку, на техподдержку и т.д. получается если делать pco модель, то туда надо будет и products лепить, а этот поле в других заявок не нужна. Это же не реляционная БД, где неиспользуемые колонки болтаются как г в проруби, если чего-то нет, то этого нет физически, поэтому... mr_maxможет все таки лучше вынести? ...не вижу смысла. Но думай сам. Рассмотри задачу со всех сторон, заранее. Чтобы потом не было боли ниже поясницы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 10:36 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВЛучше в реляционной СУБД с поддержкой транзакций. Не вижу чем лучше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 10:36 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxделаю заявки на закупки, как лучше продукты хранить вместе с заявкой или в отдельной коллекции. Вместе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 10:48 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxhVosttпропущено... можно конечно, и удалять можно Так заявки будут универсальными т.е. коллекция requests для всех видов заявок на закупку, на техподдержку и т.д. получается если делать pco модель, то туда надо будет и products лепить, а этот поле в других заявок не нужна. может все таки лучше вынести? У заявок на техподдержку нет состава/детализации? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 10:52 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВhVosttНе вижу чем лучше. Например Почему вы никогда не должны использовать MongoDB Этому баяну сто лет в обед. Обсуждали уже на разных ресурсах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 10:53 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxпропущено... Так заявки будут универсальными т.е. коллекция requests для всех видов заявок на закупку, на техподдержку и т.д. получается если делать pco модель, то туда надо будет и products лепить, а этот поле в других заявок не нужна. может все таки лучше вынести? У заявок на техподдержку нет состава/детализации? Нету, заявок разных много будет, получается мне надо будет в модели указать Products все таки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 10:58 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxделаю заявки на закупки, как лучше продукты хранить вместе с заявкой или в отдельной коллекции. Вместе. А если потребуется изменить продукты? Ну там признак добавить, санкционный ли он. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 11:07 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAпропущено... У заявок на техподдержку нет состава/детализации? Нету, заявок разных много будет, получается мне надо будет в модели указать Products все таки. Это проблема? Укажите не Products, а Items. Для одних заявок элементами будут продукты, для других что-то иное. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 11:07 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВskyANAпропущено... Вместе. А если потребуется изменить продукты? Ну там признак добавить, санкционный ли он. Это вопрос из разряда, а если завтра изменится цена продукта? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 11:09 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAЭто проблема? Укажите не Products, а Items. И потом оказывается, что в поле с названием FirstName лежат ИНН/ОГРН разделенные пробелом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 11:09 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВskyANAЭто проблема? Укажите не Products, а Items. И потом оказывается, что в поле с названием FirstName лежат ИНН/ОГРН разделенные пробелом. Не оказывается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 11:10 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAЭто вопрос из разряда, а если завтра изменится цена продукта? :) При чем тут цена? Она лежит в строго определенном поле со строго определенным типом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 11:11 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВskyANAпропущено... Вместе. А если потребуется изменить продукты? Ну там признак добавить, санкционный ли он. Легко, поле добавится новое и все.. Вообще реляционная база мне здесь не нужна.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 11:11 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВskyANAЭто вопрос из разряда, а если завтра изменится цена продукта? :) При чем тут цена? Она лежит в строго определенном поле со строго определенным типом. При том, что заявка - это свершившийся факт. Она была выполнена с такими-то параметрами продуктов. Если вдруг ввели санкции, изменили цену, поменяли производителя, то это никак не отражается на предыдущих заявках. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 11:13 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВskyANAЭто вопрос из разряда, а если завтра изменится цена продукта? :) При чем тут цена? Она лежит в строго определенном поле со строго определенным типом. Странная любовь в sql была печаль с nosql? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 11:15 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВ, вообще так можно и до EAV дойти :) У разных продуктов же может быть разный набор характеристик. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 11:17 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAПри том, что заявка - это свершившийся факт. Она была выполнена с такими-то параметрами продуктов. Если вдруг ввели санкции, изменили цену, поменяли производителя, то это никак не отражается на предыдущих заявках. А если это заявка например на подбор программиста? Она может быть 100500 раз изменена, дополнена, завизирована, согласована, подписана ЭП? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 11:39 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAПри том, что заявка - это свершившийся факт. Она была выполнена с такими-то параметрами продуктов. Если вдруг ввели санкции, изменили цену, поменяли производителя, то это никак не отражается на предыдущих заявках. +100500 И имена товаров в заявках не должны поменяться, если их поменяли в каталоге товаров. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 11:59 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВskyANAПри том, что заявка - это свершившийся факт. Она была выполнена с такими-то параметрами продуктов. Если вдруг ввели санкции, изменили цену, поменяли производителя, то это никак не отражается на предыдущих заявках. А если это заявка например на подбор программиста? Она может быть 100500 раз изменена, дополнена, завизирована, согласована, подписана ЭП? Если требуется задачей, у заявки например имеется длинный жизненный цикл, ввести понятие версии заявки. В любой адекватной системе ЭДО это является нормой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 12:01 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttskyANAПри том, что заявка - это свершившийся факт. Она была выполнена с такими-то параметрами продуктов. Если вдруг ввели санкции, изменили цену, поменяли производителя, то это никак не отражается на предыдущих заявках. +100500 И имена товаров в заявках не должны поменяться, если их поменяли в каталоге товаров. А если была скажем орфографическая ошибка или неверно введенные паспортные данные? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 12:08 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВА если была скажем орфографическая ошибка или неверно введенные паспортные данные? И что это меняет? Если купили «Пилисос», то он и должен оставаться им по заявке до конца. Насчёт паспортных данных не понял. Как понять, ошибка это или паспорт поменялся, это вопрос конкретной логики. БД-то пофигу, апдейт есть апдейт, но одно другому рознь, при чём это может выражаться финансовыми и репутационными последствиями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 12:31 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВskyANAПри том, что заявка - это свершившийся факт. Она была выполнена с такими-то параметрами продуктов. Если вдруг ввели санкции, изменили цену, поменяли производителя, то это никак не отражается на предыдущих заявках. А если это заявка например на подбор программиста? Она может быть 100500 раз изменена, дополнена, завизирована, согласована, подписана ЭП? А если в какой-то момент надо вернуться на 3 шага назад? Впрочем про версии уже написали. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 12:59 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВhVosttпропущено... +100500 И имена товаров в заявках не должны поменяться, если их поменяли в каталоге товаров. А если была скажем орфографическая ошибка или неверно введенные паспортные данные? Что-то спор уже не о SQL vs NoSQL, а о том, какие данные о продукте копировать в заявку, а какие доставать по ссылке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 13:01 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВ, и вообще автор выбрал монгу. Задаёт вопросы о том, как лучше с ней работать. Зачем набрасывать? Где ты был когда он выбирал? Вот там бы и набрасывал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 13:28 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAЕвгенийВ, и вообще автор выбрал монгу. Задаёт вопросы о том, как лучше с ней работать. Зачем набрасывать? Где ты был когда он выбирал? Вот там бы и набрасывал. Да это старый век sql, у меня бы сейчас 100 таблиц бы вышло с этими делами.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 13:48 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
Теперь самый главный вопрос, есть коллекция requests поле массив items как добавлять туда в конец массива новое значение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 14:53 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
походу вот так Код: c# 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 14:55 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAЕвгенийВ, и вообще автор выбрал монгу. Задаёт вопросы о том, как лучше с ней работать. Зачем набрасывать? Где ты был когда он выбирал? Вот там бы и набрасывал. Да это старый век sql, у меня бы сейчас 100 таблиц бы вышло с этими делами.. Sql не старый, а noSql не новый ! Просто многие не могут мыслить множествами вот и находят. Как известно количество интеллекта на планете величина постоянная, а численность программистовнаселения растет. Вот и встречают с аплодисментами все более примитивные решения ибо осмыслить их проще. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 15:01 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxпоходу вот так Код: c# 1. Не получается добавить! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 15:04 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВ, В чём смысл данные не реляционной природы пытаться запихнуть в реляционную БД? Есть несколько основных способ укласть такие данные в РСУБД, например, EAV. Но зачем такое кривые уродские костыли, когда можно использовать NoSQL? Кроме того, никто тебе не мешает использовать SQL и NoSQL вместе. В общем холивор ни о чём, время показало, что для каждой из технологий есть место под солнцем, и сравнивать их глупо. Обвинять же людей в том, что они выбирают более простые решения -- вообще вселенская глупость. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 15:09 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxmr_maxпоходу вот так Код: c# 1. Не получается добавить! Разобрался как добавлять.. ребята..ребята.. может мне на каждый тип заявки создать свою модель PurchaseRequest - например, а также иметь базовую модель Request ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 15:09 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
Документацию читайте: https://docs.mongodb.com/manual/reference/operator/update-array/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 15:11 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAДокументацию читайте: https://docs.mongodb.com/manual/reference/operator/update-array/ Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 15:12 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxпоходу вот так Код: c# 1. Вот так в Вашем случае: Код: c# 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 15:12 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxпоходу вот так Код: c# 1. Вот так в Вашем случае: Код: c# 1. Спасибо а идея с поликлассами, нормальная стоит ее делать Request - абстрактный PurchaseRequest - конкретный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 15:13 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAпропущено... Вот так в Вашем случае: Код: c# 1. Спасибо а идея с поликлассами, нормальная стоит ее делать Request - абстрактный PurchaseRequest - конкретный. Реализация в статье только не очень удачная. Не стоит в _t хранить имя конкретного класса, лучше некий числовой дискриминатор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 15:29 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxпропущено... Спасибо а идея с поликлассами, нормальная стоит ее делать Request - абстрактный PurchaseRequest - конкретный. Реализация в статье только не очень удачная. Не стоит в _t хранить имя конкретного класса, лучше некий числовой дискриминатор. Лучше интерфейсы использовать или абстрактный класс для Request? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 15:44 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAНе стоит в _t хранить имя конкретного класса, лучше некий числовой дискриминатор. Почему? Имя конкретного класса чуть менее экономно, чем число, но более гибко. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 15:48 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxЛучше интерфейсы использовать или абстрактный класс для Request? Класс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 15:48 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttmr_maxЛучше интерфейсы использовать или абстрактный класс для Request? Класс.+1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 16:06 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttskyANAНе стоит в _t хранить имя конкретного класса, лучше некий числовой дискриминатор. Почему? Имя конкретного класса чуть менее экономно, чем число, но более гибко. Чем это они гибко? С развитием системы неизбежно наступает время рефакторинга. Классы перезжают в другие сборки, меняют названия. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 16:08 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAЧем это они гибко? С развитием системы неизбежно наступает время рефакторинга. Классы перезжают в другие сборки, меняют названия. Ну это просто же. Если не очевидно, то рисуем табличку +/-, и в этой табличке "время рефакторинга" внезапно оказывается одним из двух единственных плюсов, при чём довольно сомнительным, потому что во время рефакторинга, поле дискриминатора можно и обновить, в рамках рефакторинга расходы на это -- копейки. Для имени класса в качестве дискриминатора оказывается гораздо больше увесистых плюсов: + отсутствие необходимости содержать и поддерживать какой-нибудь енум + можно развивать иерархию в любую глубину и это сразу будет работать, без ковыряний + в данных отсутствуют магические числа, которые ни о чём не говорят В общем пройденный этап ещё на заре использования EF. Имя класса для дискриминатора -- верный выбор по всем фронтам, к гадалке не ходи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 16:29 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttskyANAЧем это они гибко? С развитием системы неизбежно наступает время рефакторинга. Классы перезжают в другие сборки, меняют названия. Ну это просто же. Если не очевидно, то рисуем табличку +/-, и в этой табличке "время рефакторинга" внезапно оказывается одним из двух единственных плюсов, при чём довольно сомнительным, потому что во время рефакторинга, поле дискриминатора можно и обновить, в рамках рефакторинга расходы на это -- копейки. Для имени класса в качестве дискриминатора оказывается гораздо больше увесистых плюсов: + отсутствие необходимости содержать и поддерживать какой-нибудь енум + можно развивать иерархию в любую глубину и это сразу будет работать, без ковыряний + в данных отсутствуют магические числа, которые ни о чём не говорят В общем пройденный этап ещё на заре использования EF. Имя класса для дискриминатора -- верный выбор по всем фронтам, к гадалке не ходи. Согласен, выходит попроще Код: c# 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 16:36 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttskyANAЧем это они гибко? С развитием системы неизбежно наступает время рефакторинга. Классы перезжают в другие сборки, меняют названия. Ну это просто же. Если не очевидно, то рисуем табличку +/-, и в этой табличке "время рефакторинга" внезапно оказывается одним из двух единственных плюсов, при чём довольно сомнительным, потому что во время рефакторинга, поле дискриминатора можно и обновить, в рамках рефакторинга расходы на это -- копейки. Для имени класса в качестве дискриминатора оказывается гораздо больше увесистых плюсов: + отсутствие необходимости содержать и поддерживать какой-нибудь енум + можно развивать иерархию в любую глубину и это сразу будет работать, без ковыряний + в данных отсутствуют магические числа, которые ни о чём не говорят В общем пройденный этап ещё на заре использования EF. Имя класса для дискриминатора -- верный выбор по всем фронтам, к гадалке не ходи. Я тоже самое могу написать, только про NH: "В общем пройденный этап ещё на заре использования NH. Число в качестве для дискриминатора -- верный выбор по всем фронтам, к гадалке не ходи. " ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 16:59 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAЯ тоже самое могу написать, только про NH: "В общем пройденный этап ещё на заре использования NH. Число в качестве для дискриминатора -- верный выбор по всем фронтам, к гадалке не ходи. " Ну и супер! Чем больше точек зрения, тем яснее, что имя класса -- лучший выбор для дискриминатора ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 17:04 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max Код: c# 1. 2. 3. 4. 5. 6. Хочется что бы вернулось что нибудь типизированное, а то JavaScript какой то получается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 17:16 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВmr_max Код: c# 1. 2. 3. 4. 5. 6. Хочется что бы вернулось что нибудь типизированное, а то JavaScript какой то получается. А это api, возвращается в Json. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 17:17 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВХочется что бы вернулось что нибудь типизированное, а то JavaScript какой то получается. Таки ви что-то имеети против JavaScript, м? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 17:20 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttЕвгенийВХочется что бы вернулось что нибудь типизированное, а то JavaScript какой то получается. Таки ви что-то имеети против JavaScript, м? Не я один, Андерс Хейлсберг тоже ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 18:14 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxА это api, возвращается в Json. Который должен прекрасно десериализоваться в List<T> или кривой там .NET провайдер? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 18:17 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttskyANAЯ тоже самое могу написать, только про NH: "В общем пройденный этап ещё на заре использования NH. Число в качестве для дискриминатора -- верный выбор по всем фронтам, к гадалке не ходи. " Ну и супер! Чем больше точек зрения, тем яснее, что имя класса -- лучший выбор для дискриминатора Я вообще-то про число писал. Но да! Число -- лучший выбор для дискриминатора ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 19:35 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВmr_max Код: c# 1. 2. 3. 4. 5. 6. Хочется что бы вернулось что нибудь типизированное, а то JavaScript какой то получается. Обычно типизированное и возвращается, это ТС почему-то по своему запилил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 19:36 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAhVosttпропущено... Ну и супер! Чем больше точек зрения, тем яснее, что имя класса -- лучший выбор для дискриминатора Я вообще-то про число писал. Но да! Число -- лучший выбор для дискриминатора А в документации Имя класса используется ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 21:27 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAпропущено... Я вообще-то про число писал. Но да! Число -- лучший выбор для дискриминатора А в документации Имя класса используется И это вполне естественно! Зачем в документации приводить заведомо неудачные решения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 21:30 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttmr_maxпропущено... А в документации Имя класса используется И это вполне естественно! Зачем в документации приводить заведомо неудачные решения. Имя даже удобно, когда по базе рыскаешься... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 21:38 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
Как лучше автора записывать в заявке в виде ид, или в виде объекта название, должность..? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2016, 23:40 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_max, в виде объекта Принял, а кто-нибудь знает можно ли сделать генератор для поля Requests.Products.Id ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 10:20 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAmr_max, в виде объекта Принял, а кто-нибудь знает можно ли сделать генератор для поля Requests.Products.Id ? А зачем? У Вас что, пользователи каждый раз заводят новый продукт при составлении заявки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 10:26 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxпропущено... Принял, а кто-нибудь знает можно ли сделать генератор для поля Requests.Products.Id ? А зачем? У Вас что, пользователи каждый раз заводят новый продукт при составлении заявки? нет, я имею ввиду это будет id записи, чтобы её можно было удалить отредактировать к ней обратиться, это не ид продукта, а ид записи продукта в заявке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 10:28 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxнет, я имею ввиду это будет id записи, чтобы её можно было удалить отредактировать к ней обратиться, это не ид продукта, а ид записи продукта в заявке. Чем ObjectId не подходит, опять же? ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 10:30 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttmr_maxнет, я имею ввиду это будет id записи, чтобы её можно было удалить отредактировать к ней обратиться, это не ид продукта, а ид записи продукта в заявке. Чем ObjectId не подходит, опять же? ) подходит только как его заставить там генерировать. Вот как я делаю обычно Код: c# 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 10:31 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxhVosttпропущено... Чем ObjectId не подходит, опять же? ) подходит только как его заставить там генерировать. Код: c# 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 10:33 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxпропущено... подходит только как его заставить там генерировать. Код: c# 1. ага т.е. при записи делать, понял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 10:34 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
Вообще заворачиваете всё в свой класс IdGenerator и используете что хотите. Простейшая же задачка на ООП :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 10:35 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAпропущено... Код: c# 1. ага т.е. при записи делать, понял. Это уж как Вам удобнее. Лично я предпочитаю при создании инстанса класса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 10:36 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
Типа как-то так: Код: c# 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 10:38 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAТипа как-то так: Код: c# 1. 2. 3. 4. не срабатывает Код: c# 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 17:02 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
сорри разобрался сделал так Код: c# 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 17:07 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
Как лучше сделать, хранить сумму по продукту в заявке или высчитывать её при получении данных из монги? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 17:25 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxКак лучше сделать, хранить сумму по продукту в заявке или высчитывать её при получении данных из монги? Высчитывать. Никогда нельзя поручится, что данные не изменятся ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 17:33 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxКак лучше сделать, хранить сумму по продукту в заявке или высчитывать её при получении данных из монги? Хранить сумму. Почему не высчитывать? Потому что на конечную сумму может быть оказано много одноразовых эффектов, например в следствие работы программ лояльности (скидоны, бонусы, купи 2 получи 100 р. и прочее прочее прочее). Сумма заказа это часть заявки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 17:41 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxКак лучше сделать, хранить сумму по продукту в заявке или высчитывать её при получении данных из монги? Что такое сумма по продукту? Как она расчитывается и зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 18:07 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
Cat2Высчитывать. Никогда нельзя поручится, что данные не изменятся Очень странное предположение. Если так рассуждать, то измениться всё что угодно может. Сумма такая же часть заявки, её показывают пользователю, значит и оплачивать он её должен, а не какую-то другую, которая автоматически вычислится, если что-то там внезапно изменится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 18:20 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttCat2Высчитывать. Никогда нельзя поручится, что данные не изменятся Очень странное предположение. Да ничего тут странного, вы просто смотрите каждый со своей колокольни. А решение зависит от предметной области. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 19:47 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAДа ничего тут странного, вы просто смотрите каждый со своей колокольни. А решение зависит от предметной области. Лично я пояснил свою мысль. А как там обстоят дела с предметкой ТС-у виднее, чем нам всем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2016, 21:03 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxКак лучше сделать, хранить сумму по продукту в заявке или высчитывать её при получении данных из монги? Что такое сумма по продукту? Как она расчитывается и зачем? При формировании заявки юзер набирает корзину товаров, у товара есть цена, также он указывает кол-во, сейчас я храню в корзину только цену товара и кол-во, нужно ли хранить сумму или делать так Код: c# 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 09:43 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, операция умножения двух вещественных чисел очень ресурсоемка, лучше хранить предвычесленное значение :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 10:47 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
ЕвгенийВmr_max, операция умножения двух вещественных чисел очень ресурсоемка, лучше хранить предвычесленное значение :) При наших серваках, все еще ресурсоемка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 10:49 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxЕвгенийВmr_max, операция умножения двух вещественных чисел очень ресурсоемка, лучше хранить предвычесленное значение :) При наших серваках, все еще ресурсоемка? Он тебя подкалывает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 10:50 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAпропущено... Что такое сумма по продукту? Как она расчитывается и зачем? При формировании заявки юзер набирает корзину товаров, у товара есть цена, также он указывает кол-во, сейчас я храню в корзину только цену товара и кол-во, нужно ли хранить сумму или делать так Код: c# 1. 2. В данной ситуации не вижу смысла хранить сумму. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 10:54 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
hVosttmr_maxпропущено... При наших серваках, все еще ресурсоемка? Он тебя подкалывает Думаю, за то дополнительное время, которое будет потрачено на вытаскивание с диска дополнительного числа, какой нибудь i7, сделает как минимум измеряющиеся 4 разрядами число умножений вещественных чисел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 11:10 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
Ребята, а где лучше хранить процесс согласования заявки, в этой же коллекции или в другой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 13:34 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxРебята, а где лучше хранить процесс согласования заявки, в этой же коллекции или в другой?Вопросы задаёте так, будто мы разбираемся в вашей предметке :) Вы для начала объясните, что это за процесс такой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 13:41 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
А вообще не вижу смысла пихать в документ ещё и историческу информацию о процессах, что с ним происходили. В различных областях объекты переходят из одного состояния в другое. Не припомню, чтобы была необходимость данные о переходах хранить вместе с объектом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 13:45 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAА вообще не вижу смысла пихать в документ ещё и историческу информацию о процессах, что с ним происходили. В различных областях объекты переходят из одного состояния в другое. Не припомню, чтобы была необходимость данные о переходах хранить вместе с объектом. Задача проста, Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 13:47 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxРебята, а где лучше хранить процесс согласования заявки, в этой же коллекции или в другой? В другой. Логически история не является частью заявки. Старайся смотреть со стороны предметки. Если что-то является или входит в, то это скорее всего один документа. Процесс согласования (история) не является и не входит в заявку. В заявке хранится её актуальное состояние. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 13:48 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
а как мне про апдейтить два поля например, когда мне возвращается весь объект, пробегать в цикле проверять, какие заполнены, такие и апдейтить через Update.Set? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 14:31 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxа как мне про апдейтить два поля например, когда мне возвращается весь объект, пробегать в цикле проверять, какие заполнены, такие и апдейтить через Update.Set? Ни фига не понял. Пользователь изменил заявку, ну так сохраните её в том виде, что получилось. В чём проблема? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 14:50 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
И вообще используйте ViewModel. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 14:52 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxа как мне про апдейтить два поля например, когда мне возвращается весь объект, пробегать в цикле проверять, какие заполнены, такие и апдейтить через Update.Set? Ни фига не понял. Пользователь изменил заявку, ну так сохраните её в том виде, что получилось. В чём проблема? так он поменял только два поля например, Вот что навоял.. Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 14:52 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAИ вообще используйте ViewModel. Я это и использую. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 14:53 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAпропущено... Ни фига не понял. Пользователь изменил заявку, ну так сохраните её в том виде, что получилось. В чём проблема? так он поменял только два поля например, Вот что навоял.. Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Костыль какой-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 14:56 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAИ вообще используйте ViewModel. Я это и использую. А в коде Вашем я вижу, что нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 14:57 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxпропущено... Я это и использую. А в коде Вашем я вижу, что нет. А вот здесь есть она Код: c# 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 14:58 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAпропущено... А в коде Вашем я вижу, что нет. А вот здесь есть она Код: c# 1. 2. 3. 4. 5. 6. Тогда я впервые вижу, чтобы ViewModel передавали в репозиторий :) А если серьёзно, то почему у Вас поля в модели не заполнены? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 15:00 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
И вот жто: _requestRepository.Update(id, purchase) , - фигня какая-то. Должно быть так: _requestRepository.Update(purchase) . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 15:02 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxпропущено... А вот здесь есть она Код: c# 1. 2. 3. 4. 5. 6. Тогда я впервые вижу, чтобы ViewModel передавали в репозиторий :) А если серьёзно, то почему у Вас поля в модели не заполнены? Потому что идет такой запрос ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 15:03 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAИ вот жто: _requestRepository.Update(id, purchase) , - фигня какая-то. Должно быть так: _requestRepository.Update(purchase) . ок, спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 15:07 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
Есть поле Created, как сделать так чтобы оно не участвовало в Update? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 15:21 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAпропущено... Тогда я впервые вижу, чтобы ViewModel передавали в репозиторий :) А если серьёзно, то почему у Вас поля в модели не заполнены? Потому что идет такой запрос И зачем самому себе создавать трудности? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2016, 17:10 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxпропущено... Потому что идет такой запрос И зачем самому себе создавать трудности? Это точно, поменял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2016, 13:06 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
как лучше хранить статус в заявке просто его код или с заголовком? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2016, 14:22 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, с заголовком, он небось в списке каком отображается. Вам разве самому сложно понять, где какие данные нужны? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2016, 15:25 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_max, с заголовком, он небось в списке каком отображается. Вам разве самому сложно понять, где какие данные нужны? Первый опыт, хочется сразу правильно делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2016, 17:26 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
Сейчас я юзера добавляю в контроллере, а как это вынести в репозитрий, как его туда проталкивать? Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. Делать так? Код: c# 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2016, 15:46 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, а зачем его в репозиторий проталкивать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2016, 18:41 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_max, а зачем его в репозиторий проталкивать? в репозитории я хочу прописать всю логику добавления в монгу.. сделал пока так Код: c# 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.11.2016, 23:20 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAmr_max, а зачем его в репозиторий проталкивать? в репозитории я хочу прописать всю логику добавления в монгу.. Добавлению в монгу чего? Описание шаблона Репозиторий читали? Посредничает между уровнями области определения и распределения данных (domain and data mapping layers), используя интерфейс, схожий с коллекциями для доступа к объектам области определения. Имхо ClaimsIdentity не относится к вашей предметной области, к вашему domain. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 10:08 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxпропущено... в репозитории я хочу прописать всю логику добавления в монгу.. Добавлению в монгу чего? Описание шаблона Репозиторий читали? Судя по картинке я делаю не правильно( https://msdn.microsoft.com/en-us/library/ff649690.aspx Нужно auery отдавать в контроллер, а он уже будет его крутить вертеть, так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 10:45 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
Есть коллекция requests_approval - процесс согласования. нужно ли там хранить id заявки, если хранить id согласования в заявки, то при изменении процесса согласования, приходится читать заявку сначала, и вытаскивать оттуда id согласования, как быть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 12:02 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAпропущено... Добавлению в монгу чего? Описание шаблона Репозиторий читали? Судя по картинке я делаю не правильно( https://msdn.microsoft.com/en-us/library/ff649690.aspx Нужно auery отдавать в контроллер, а он уже будет его крутить вертеть, так? Если по картинке, то нужно Business Entity отдавать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 14:40 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
То есть экземпляр типа Purchase. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 14:40 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxЕсть коллекция requests_approval - процесс согласования. нужно ли там хранить id заявки, если хранить id согласования в заявки, то при изменении процесса согласования, приходится читать заявку сначала, и вытаскивать оттуда id согласования, как быть?А зачем сейчас в зявке id согласования? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 14:41 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxЕсть коллекция requests_approval - процесс согласования. нужно ли там хранить id заявки, если хранить id согласования в заявки, то при изменении процесса согласования, приходится читать заявку сначала, и вытаскивать оттуда id согласования, как быть?А зачем сейчас в зявке id согласования? Ну как зачем, наверно по привычке делаю как в sql. предлагаете убрать его оттуда? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 15:07 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAпропущено... А зачем сейчас в зявке id согласования? Ну как зачем, наверно по привычке делаю как в sql. предлагаете убрать его оттуда? При чём тут SQL? С точки зрения логической модели зачем в заявке ссылаться на согласование? С точки зрения предметной области? С точки зрения ваших процессов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 16:18 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_maxпропущено... Ну как зачем, наверно по привычке делаю как в sql. предлагаете убрать его оттуда? При чём тут SQL? С точки зрения логической модели зачем в заявке ссылаться на согласование? С точки зрения предметной области? С точки зрения ваших процессов? Для того, чтобы в карточке заявки видеть процесс согласования. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 16:39 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAпропущено... При чём тут SQL? С точки зрения логической модели зачем в заявке ссылаться на согласование? С точки зрения предметной области? С точки зрения ваших процессов? Для того, чтобы в карточке заявки видеть процесс согласования. Это не с точки зрения предметной области, это с точки зрения конкретной реализации UI :) По мне так вполне вероятна ситуация, когда был один процесс согласования, в результате которого было решено обосновать в заявке одно, выкинуть другое и т.п. Переделали заявку, и запустили повторный процесс согласования. Что говорит нам о том, что в заявке не надо хранить id процесса, т.к. одной заявке может соответсвовать несколько процессов согласования. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 16:47 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_max, но если у Вас иначе, то вероятно можно сделать и так как Вы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.11.2016, 16:49 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_max, но если у Вас иначе, то вероятно можно сделать и так как Вы. Сделаю пока как вы предлагаете, а там видно будет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2016, 21:47 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
Хорошо :) Кстати по поводу: mr_maxприходится читать заявку сначала, и вытаскивать оттуда id согласования В MongoDB поддерживаются покрывающие индексы, а C# драйвер поддерживает проекции. Так что очень быстро можно вытащить id согласования из памяти даже при хранении последнего вместе с заявкой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 08:36 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
Теперь нужно узнавать для юзера который заходит на страницу списка заявок, есть ли заявки этого типо у него на согласовании. это мне надо в коллекции approval, сделать поле request = { Id : 'ид заявки', Type: 'тип заявки' } и потом филmтровать по ним правильно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 12:06 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
skyANAmr_max, Вам виднее. А как сделать следующие мне надо вывести заявки которые у меня на согласовании. ид заявки только в коллекции approvals находится, там же находится и ид пользователя. Сделать с помощью linq AsQueryable или сначала узнать все ид заявок в коллекции approvals. А потом их запросить у коллекции requests? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 15:03 |
|
||
|
Type
|
|||
|---|---|---|---|
|
#18+
mr_maxskyANAmr_max, Вам виднее. А как сделать следующие мне надо вывести заявки которые у меня на согласовании. В каком виде? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2016, 17:11 |
|
||
|
|

start [/forum/topic.php?all=1&fid=18&tid=1355699]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
162ms |
get tp. blocked users: |
2ms |
| others: | 273ms |
| total: | 510ms |

| 0 / 0 |
