|
|
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
Не, вообще-то я думал, что понимаю, зачем они нужны. Поэтому и не применял у себя (ранее вычитал рекомендации по нотации ОРМ не_помню_от_кого и они мне понравились - именовать поля персистентных классов, в точности, как поля БД). Но над одним маппингом бился до умозамрачения (много-ко-многим), пока не вставил код одного из примеров без изменений. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Pourquois??!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2010, 12:10 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
Флюент зло. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2010, 12:24 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
МСУ, Я могу, конечно, потибидохаться и написать тестовый пример на xbm, но на 90% уверен, что будет то же самое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2010, 12:26 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
МСУ-й, Вы- мозгоклюй! Я не хотел обидеть апологетов xbm, а имел в виду, что мне лень тибидохаться с созданием тестового проекта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2010, 13:00 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
КурдльМСУ-й, Вы- мозгоклюй! Хуже КурдльЯ не хотел обидеть апологетов xbm, а имел в виду, что мне лень тибидохаться с созданием тестового проекта. То есть, Вы обычно создаёте "тестовый" проект на флюенсе, потом позже переводите проект в стадию "commerce", а флюенс прибиваете нах и прикручиваете hbm? ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2010, 13:16 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
МСУ То есть, Вы обычно создаёте "тестовый" проект на флюенсе, потом позже переводите проект в стадию "commerce", а флюенс прибиваете нах и прикручиваете hbm? ) Чего-й-та? Создаю тестовый (пробный) проект на том, что хочу протестировать (опробовать). Потом выбрасываю. А текущий проект на флюенте. Мне не угнаться за полетом Вашей мысли... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2010, 14:30 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
Забейте, настроение просто хорошее, разговорчивое ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2010, 14:43 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
Не понял суть проблемы, но про стратегии доступа исчерпывающе написано в документации . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2010, 16:18 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
SolYUtorНе понял суть проблемы, но про стратегии доступа исчерпывающе написано в документации . СПАСИБО! Суть проблемы: я нигде в проекте не использую CamelCase-Underscore преобразование, именую поля персистентных классов в полном соответствии с полями сущностей БД (напр "DOC_ID" -> Document.DOC_ID). Однако Nhibernate потребовал в маппинге указать ".Access.CamelCaseField()" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2010, 17:22 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
Курдль, NHibernate ничего не требует, он предлагает варианты, как добираться до поля. Боюсь, вы не так вкурили ошибку (или что там у вас стряслось). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2010, 17:41 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
SolYUtorКурдль, NHibernate ничего не требует, он предлагает варианты, как добираться до поля. Боюсь, вы не так вкурили ошибку (или что там у вас стряслось). См. пост №1. Если убрать помеченную красным строчку кода, при старте приложения вываливается ошибка: NHibernate.PropertyNotFoundException: Could not find a setter for property 'Tasks' in class 'Documents' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2010, 17:56 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
Курдль, так разве вот это не слишком доходчиво звучит? авторCould not find a setter for property 'Tasks' in class 'Documents' Код свойства Tasks в студию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2010, 18:07 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
SolYUtorКурдль, так разве вот это не слишком доходчиво звучит? Код свойства Tasks в студию. Я не все понял точно, но кажется там было что-то про собаку породы сеттер. Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.09.2010, 19:23 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
Жёсткий код, однако... А попроще нельзя было? Код: plaintext 1. Конкретные реализации коллекций считаются не комильфо, интерфейсы рулят и всё такое. NH подменяет IList своей реализацией. Посему ему нужен доступ к этому полю, а в вашем случае его нет. Потому и нужно указывать доступ на уровне поля. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 10:47 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
SolYUtor, Да, скорее всего так, как Вы сказали - я и сам об этом думал. Код: plaintext 1. 2. 3. 4. 5. 6. Код: plaintext 1. 2. 3. 4. 5. 6. В общем, добавлю четкие указания на поля и попробую убрать CamelCase, как время выдастся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:14 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
SolYUtor, Я не поленился перелопатить весь проект и всем идентификаторам сущностей в маппинге явно указать соответственные поля БД(ранее только они были обделены полным вниманием маппинга). Таким образом в моей модели нет ни одного не замапленного явно поля. ОДНАКО! Опять, как только я удаляю в единственном месте ".Access.CamelCaseField()" - Nhibernate отказывается стартовать. В общем-то программа работает, но меня немножечко удручает непонимание происходящего. Может быть так происходит из-за того, что не замапленными явно остаются ассоциативные таблицы, поддерживающие связь много-ко-многим?.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2010, 09:59 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
Курдль, Еще раз: хиберу нужно писать и читать значения свойств. Чтобы записывать и читать у свойств должен быть и getter и setter. Хоть приватные, но быть должны! Если хотя бы одного из них нет - то нужно указывать способ доступа к подлежащему полю ( в т.ч. стратегию именования). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2010, 10:52 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
КурдльSolYUtorКурдль, так разве вот это не слишком доходчиво звучит? Код свойства Tasks в студию. Я не все понял точно, но кажется там было что-то про собаку породы сеттер. Код: plaintext Насколько я понимаю, такого рода код относится к тому, что авторы fluent'a называют 'non-standard design'. А следовательно для мэппинга необходимо использовать свойство Access(). А почему не подходит что-нить вроде Код: plaintext Вот из фака ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2010, 11:05 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
SolYUtor, Спасибо за подробное объяснение! Со второго раза до меня начало доходить. Хоть пока не понятно, причем CamelCase, если у меня везде в чистом виде Underscore. Но больше тратить свое и чужое время на проблему, которая не мешает жить, не буду. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2010, 11:06 |
|
||
|
Зачем нужны CamelCase field?
|
|||
|---|---|---|---|
|
#18+
КурдльSolYUtor, Спасибо за подробное объяснение! Со второго раза до меня начало доходить. Хоть пока не понятно, причем CamelCase, если у меня везде в чистом виде Underscore. Но больше тратить свое и чужое время на проблему, которая не мешает жить, не буду. если бы у тебя было _documents, то нужно было бы писать Access.CamelCaseField(Prefix.Underscore)... легко проверить.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.09.2010, 11:11 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=36828955&tid=1351101]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
195ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 201ms |
| total: | 485ms |

| 0 / 0 |
