|
|
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
Курдльпротиворечит Его вообще трогать не нужно. КурдльКстати, такая религиозная конструкция изображена во всех прочитанных мною "руководящих документах"! В топку такие инструкции! Иначе Вы лишаетесь способа использования сущности без выдёргивания её из базы. Выбирайте, что Вам дороже: оптимизация или гламурь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 11:16 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
МСУ Иначе Вы лишаетесь способа использования сущности без выдёргивания её из базы. Выбирайте, что Вам дороже: оптимизация или гламурь. А если настроить геттер на приватное поле, устанавливаемое только в конструкторе, получится "и вашим, и нашим"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 11:21 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
КурдльА если настроить геттер на приватное поле, устанавливаемое только в конструкторе, получится "и вашим, и нашим"? А с чего это вдруг конструктор должен проводить инициацию? Не забывайте про паттерны репозитория и иже, которые хранят в себе бизнес-слой. P.S. Не выдумывайте, короче. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 11:23 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
МСУ, Т.е. Вы уверены, что ПК помечены protected из чисто религиозных соображений пущей защищенности? Никаких граблей у Вас со "снятием защиты" не возникало? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 11:30 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
Курдль, зачем Вы меня заставляете повторять дважды? Я же вам уже дал ответ: МСУВыбирайте, что Вам дороже: оптимизация или гламурь. Думайте сами. P.S. По сабжу: с введением дополнительного FK-поля я сомневаюсь, что Вы сможете сохранить сущность в базе. Лично я использую sql-query + Transformer (Class) для сложных участков, требующих оптимизации, чего и Вам советую. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 11:38 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
Да, для сложных трансформаций из sql-query всегда хорошо иметь под рукой свой кастомный транформатор (от IResultTransformer). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 11:56 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
МСУс введением дополнительного FK-поля я сомневаюсь, что Вы сможете сохранить сущность в базе. Я обращаюсь на форум не для досужего базара. Все подходящие мне варианты стараюсь проверять. Предложенное Вами: Код: plaintext 1. 2. 3. 4. 5. Другое дело, что не удается повторить возможное в Linq2Sql: Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 12:05 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
КурдльПредложенное Вами ... прекрасно отработало. Спасибо! Ок, теперь Вы прочувствовали негатив религиозных конструкций, предлагаемых на различных сайтах уважаемыми пионерами-говнопесателями? ) КурдльNhibernate при таком присвоении вываливает ошибку И правильно, что выдаёт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 12:08 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
Курдль, вы вообще, читаете, что Вам пишут? МСУP.S. По сабжу: с введением дополнительного FK-поля я сомневаюсь, что Вы сможете сохранить сущность в базе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 12:18 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
МСУКурдль, вы вообще, читаете, что Вам пишут? МСУP.S. По сабжу: с введением дополнительного FK-поля я сомневаюсь, что Вы сможете сохранить сущность в базе. Да, конечно же читал! Но создавалась эта ветка форума, чтобы понять, как лучше организовать чтение, - с особенностями записи я смирился. Но в результате обсуждения обрел даже больше, чем ожидал - спасибо Вам! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 12:28 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
Курдлькак лучше организовать чтение Ещё раз акцентирую Ваше внимание на sql-query + Transformer (Class)! P.S. Не нужно мучать реальную сущность. Сегодня Вы вводите новые члены, завтра возникает еще задача - опять новые пропертя? P.S2. Последний раз говорю, больше не буду повторять: маппируйте "задачу" не в базовую сущность, а в отдельный класс(ы), предназначенный для той самой задачи, и работайте с этой самой сущностью. Вот Вам, бабушка, и Юрьев день оптимизация :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 12:34 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
МСУP.S. Не нужно мучать реальную сущность. Сегодня Вы вводите новые члены, завтра возникает еще задача - опять новые пропертя? P.S2. Последний раз говорю, больше не буду повторять: маппируйте "задачу" не в базовую сущность, а в отдельный класс(ы), предназначенный для той самой задачи, и работайте с этой самой сущностью. 1. Откуда возьмутся новые пропертя, если в предметной области и даже в БД они не появились? 2. А это наводит на грустные мысли: "нахрена я перешел с ADO.NET на NHibernate, если все равно моя модель обрастет сущностями, выходящими за рамки DDD, всякими там DTO и т.п." :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 12:42 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
Курдль1. Откуда возьмутся новые пропертя, если в предметной области и даже в БД они не появились? Как Вы недальнозорки... :) Задача: формирование продукт листа Доступные атрибуты (те, которые нужны для продукт листа): ProductID (Products), ProductName (Products), CategoryID (Products), CategoryName (Categories) Нагрузка на систему: 10000 пользователей Приблизительное кол-во продукции: ~ 10 млн записей Сформируйте мне этот список средствами хибера. Жду. [/quot]2. А это наводит на грустные мысли: "нахрена я перешел с ADO.NET на NHibernate, если все равно моя модель обрастет сущностями, выходящими за рамки DDD, всякими там DTO и т.п." :([/quot] Так всегда было и будет. ORM - это универсальный механизм, а не лекарственное средство от панацеи. Как только появляется задача не вида хеллоу ворлд, приходиться выходить за грани... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 12:51 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
Курдль1. Откуда возьмутся новые пропертя, если в предметной области и даже в БД они не появились? Как Вы недальнозорки... :) Задача: формирование продукт листа Доступные атрибуты (те, которые нужны для продукт листа): ProductID (Products), ProductName (Products), CategoryID (Products), CategoryName (Categories) Нагрузка на систему: 10000 пользователей Приблизительное кол-во продукции: ~ 10 млн записей Сформируйте мне этот список средствами хибера. Жду. Курдль2. А это наводит на грустные мысли: "нахрена я перешел с ADO.NET на NHibernate, если все равно моя модель обрастет сущностями, выходящими за рамки DDD, всякими там DTO и т.п." :( Так всегда было и будет. ORM - это универсальный механизм, а не лекарственное средство от панацеи. Как только появляется задача не вида хеллоу ворлд, приходиться выходить за грани... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 12:52 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
Кстати, по вопросу "нахрена": недавно дискутировали в соседней ветке , понравилось высказывание LR: LRменьше свободы - больше надежности и управляемости, больше свободы - меньше надежности и управляемости... P.S. Вот такие, Курдлёчек, дела ... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 13:11 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
МСУ Задача: формирование продукт листа Доступные атрибуты (те, которые нужны для продукт листа): ProductID (Products), ProductName (Products), CategoryID (Products), CategoryName (Categories) На мой бесстрашный дилетантский взгляд - одна проекция и "fetch-join" приведут к одному единственному запросу, что не сильно "опаснее" чистого SQL-запроса от ADO.NET. Теперь Ваш вариант - где подвох? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 14:26 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
Курдльдилетантский взгляд Ну не прибедняйтесь, все знают что Вы бесстрашный гура флюентист! :) Курдльодна проекция и "fetch-join" приведут к одному единственному запросу, что не сильно "опаснее" чистого SQL-запроса от ADO.NET. Не опаснее?! Батенька, - Вы уволенынах! P.S И что вернется? Лист сущностей Northwind..Products. Понимаете, к чему клоню? Правильно, избыточные поля, которые не нужны задаче. Я, ведь, не зря акцентировал внимание на результирующие атрибуты: мусяProductID (Products), ProductName (Products), CategoryID (Products), CategoryName (Categories) DBA Вас порвёт. КурдльТеперь Ваш вариант - где подвох? Подвох (самый злой из подвохов) тут: Northwind..Products Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. А если бы мы рассмотрели задачу Northwind..Employees? Корень зла - в поле Photo (image)? P.S. Вот поэтому, милый Курдлёк, ситуацию спасйт только IResultTransformer. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 14:52 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
МСУ, DBA - рабочая лошадка из Департамента сопровождения автоматизированных систем, которая не имеет никакого права издавать звуки из своего болота! Если у него какие-то проблемы с производительностью вверенных АС - значит он прос...ал деньги, выделенные на покупку аппаратных средств, или закупил г...но за откаты ;) А если серьезно, сейчас копаю в сторону ленивой загрузки отдельных полей, в основном из-за упомянутых BLOB-ов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 15:01 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
КурдльDBA - рабочая лошадка из Департамента сопровождения автоматизированных систем, которая не имеет никакого права издавать звуки из своего болота! Пойдите расскажите это на сиквельном форуме, а я посмотрю издали :) КурдльЕсли у него какие-то проблемы с производительностью вверенных АС - значит он прос...ал деньги, выделенные на покупку аппаратных средств, или закупил г...но за откаты ;) А Вы не думали, что корень беспощадного зла может таиться в вверителях? :) КурдльА если серьезно, сейчас копаю в сторону ленивой загрузки отдельных полей, в основном из-за упомянутых BLOB-ов. Ну-ну... ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 15:38 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
МСУКурдльА если серьезно, сейчас копаю в сторону ленивой загрузки отдельных полей, в основном из-за упомянутых BLOB-ов. Ну-ну... ) А что?!! Один величайший гуру Nhibernate с одноименного сайта .ru сказал, что достаточно полю поставить lazy="true", как оно тут же перестает грузиться, когда его не просят! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 15:48 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
И Вы, конечно, уже опробовали лекарственное средство этого величайшего гуру? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 15:57 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
МСУИ Вы, конечно, уже опробовали лекарственное средство этого величайшего гуру? :) Ну ясен... пень! Что-та нет пока клинического эффекта. Но упорство должно победить! ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:04 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
КурдльЧто-та нет пока клинического эффекта. Но упорство должно победить! ;) А, может, это вовсе не величайший гуру, а, всего-навсего, гурка мелкого пошива? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:08 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
КурдльНо упорство должно победить! ;) У Вас есть одно очень наихреновейшее свойство, Курдлёк :) Вы прёте как баран на стену и не хотите видеть, что есть за той стеной. Там, конечно, могут быть и золотые слитки, но может быть и большая куча коровьего навоза, дурно манящая поганых мух. Вам нужны поганые мухи? Итак, предположим, что Вы добились ленивой загрузки пропертей на основе маппинга: Исходные данные: есть 3 поля RefId1, RefId2 и RefI3. Задача: Добиться ленивой загрузки поля RefId1 Вы её решаете. Но, через какое-то время, возникает задача ленивой загрузки поля RefId2. Вот все комбинации возможных задач: КомбинацииЗадача 1: Добиться ленивой загрузки поля RefId1 Задача 2: Добиться ленивой загрузки поля RefId2 Задача 3: Добиться ленивой загрузки поля RefId3 Задача 4: Добиться ленивой загрузки полей RefId1, RefId2 Задача 5: Добиться ленивой загрузки полей RefId1, RefId3 Задача 6: Добиться ленивой загрузки полей RefId2, RefId3 Задача 7: Добиться ленивой загрузки полей RefId1, RefId2, RefId3 Внимание вопрос: Вы всё-время будете править маппинги? Или сразу сделаете все поля сущности ленивыми? Что скажете, коллега? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:15 |
|
||
|
Чем отличается Nhibernate и Linq2SQL?
|
|||
|---|---|---|---|
|
#18+
МСУ А, может, это вовсе не величайший гуру, а, всего-навсего, гурка мелкого пошива? Не знаю, вроде как парень он отзывчивый - аккуратно отвечает на каждый вопрос по вечерам. Правда ответы как-то не очень... Зато похоже - сам создатель сайта, а это звучит гордо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2010, 16:18 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=36831415&tid=1351102]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
37ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
74ms |
get tp. blocked users: |
2ms |
| others: | 232ms |
| total: | 386ms |

| 0 / 0 |
