powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Чем отличается Nhibernate и Linq2SQL?
54 сообщений из 54, показаны все 3 страниц
Чем отличается Nhibernate и Linq2SQL?
    #36814050
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день, коллеги!
Препарирую один пример на Linq2SQL и пытаюсь повторить его на Nhibernate.
И все время натыкаюсь на проблемы несоответствия.
Вот они, главные на текущий момент: внешние ключи .
В Nhibernate они явно не мапятся на поля класса (только в отношениях). Видимо поэтому в объекте, при заполнении его из БД, они остаются пустыми. А вот Linq2SQL заполняет их значениями!
Из-за этого возникает некоторый геморрой с выпадающими списками и т.п.

А может просто я не умею их готовить?..
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36829931
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нихрена не понял.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36829987
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУНихрена не понял.
Ну, это для Вас характерно!
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
    public class Order
    {
        public virtual int ORDER_ID { get; protected set; }
        public virtual string ORDER_NAME { get; set; }
        public virtual int CUSTOMER_ID { get; set; }  // Поле, на которое проецируется внешний ключ БД
        public virtual Customer Customer { get; protected set; }
    }
Маппинг:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
    public OrderMapper()
    {
        Table("ORDERS");
        Id(x => x.ORDER_ID).Column("ORDER_ID").GeneratedBy.Native("SEQ_ORDER_ID");
        Map(x => x.ORDER_NAME).Column("ORDER_NAME");
        References(x => x.Customer, "CUSTOMER_ID");
    }
Поле CUSTOMER_ID как бы есть, но Nhibernate не заполняет его данными из БД а при попытке замапить явно - выдает исключение (что верно - для предотвращения конфликтов).
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36829989
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну собственно в Entity Framework ключи тоже нужно подгружать методом Load();
Это не значит, что он хуже Linq2SQL. Он сложнее.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36829991
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В НХибере не знаю, но думаю аналогично.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36829996
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buredНу собственно в Entity Framework ключи тоже нужно подгружать методом Load();
Это не значит, что он хуже Linq2SQL. Он сложнее.

В NH подгружать их не нужно - они извлекаются из связанного объекта.
Код: plaintext
order.CUSTOMER_ID = order.Customer.CUSTOMER_ID 
Я дополнил соответственным кодом геттеры таких полей, но это все равно костыль...
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36830105
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль,

Вы хотите сказать что хибер не полную таблицу тащит для ордера, поля сязки оставляет пустой?
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36830508
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степиКурдль,

Вы хотите сказать что хибер не полную таблицу тащит для ордера, поля сязки оставляет пустой?

Именно это, возможно неуклюже, я пытался довести до всеобщего внимания в первом посте.
Но повторяю, возможно я что-то упустил в маппинге, хотя перерыл кучу статей и примеров по флюенту.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36830532
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль,

по-моему всё верно. А представьте, что у вас там целое дерево. Что всё дерево тащить на клиента, даже если fk вообще не нужен?
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36830533
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.е. если вам нужен просто ORDER_NAME, зачем тащить Покупателя, а за ним, может быть ещё несколько адресов из таблички Адресов и т.д.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36830542
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buredТ.е. если вам нужен просто ORDER_NAME, зачем тащить Покупателя, а за ним, может быть ещё несколько адресов из таблички Адресов и т.д.
Вы не вникли в проблему. Я не говорю про дерево. Я хотел бы просто чтобы NH "тащил" все поля таблицы ORDERS (если рассматривать мой пример), включая CUSTOMER_ID. Сейчас я получаю или 0 или null (в зависимости от типа int или int?).
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36830550
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль,

теперь понял. Просто в EF самого поля fk нет. Хотя до него можно добраться.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36830563
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль,

Все дело в вашем мапинге, я не силен, чем вы пользуетесь, предпочитаю автогенерить по старинке
в хмл, ищите ошибку и ся, хибер тут не причем
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36830588
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степи,
А если так?,( я интуитивно предположил)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
public OrderMapper()
    {
        Table("ORDERS");
        Id(x => x.ORDER_ID).Column("ORDER_ID").GeneratedBy.Native("SEQ_ORDER_ID");
        Map(x => x.ORDER_NAME).Column("ORDER_NAME");
        Map(x => x.CUSTOMER_ID).Column("CUSTOMER_ID");
        References(x => x.Customer, "CUSTOMER_ID");
    }
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36830608
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
когда хибер генерит запрос на селект, он парсит или рефлексирует ваш мап, какие поля включать
в запрос. если поля нет в мапе он его и в запрос включать не будет, он не такой интеллектуал, что бы лазить в базу за этим,( хотя и не мешало бы)
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36830611
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степиГде-то в степи,
А если так?,( я интуитивно предположил)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
public OrderMapper()
    {
        Table("ORDERS");
        Id(x => x.ORDER_ID).Column("ORDER_ID").GeneratedBy.Native("SEQ_ORDER_ID");
        Map(x => x.ORDER_NAME).Column("ORDER_NAME");
        Map(x => x.CUSTOMER_ID).Column("CUSTOMER_ID");
        References(x => x.Customer, "CUSTOMER_ID");
    }


Конечно же я первым делом испытал этот вариант.
Поле вполне нормально принимает значение из БД, как мне и хотелось.
НО! При Update неизменно вылезает "Index out of range"
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36830621
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КАПЕЦ! Ларчик открывался просто!
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
public OrderMapper()
    {
        Table("ORDERS");
        Id(x => x.ORDER_ID).Column("ORDER_ID").GeneratedBy.Native("SEQ_ORDER_ID");
        Map(x => x.ORDER_NAME).Column("ORDER_NAME");
        Map(x => x.CUSTOMER_ID).Column("CUSTOMER_ID").ReadOnly();
        References(x => x.Customer, "CUSTOMER_ID");
    }

Приношу глубочайшие извинения ревнителям великого и могучего NHibernate!
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36830905
SolYUtor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если ничего не помогает, прочитайте наконец документацию!
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36830947
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SolYUtorЕсли ничего не помогает, прочитайте наконец документацию!
Да я бы с радостью, но мало ее по флюенту :( Поэтому по большей части разбираю примеры, пользуюсь чужими приемами и иногда возникают такие вот проблемы.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36830976
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sql-query + Transformer (Class) как вариант
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831014
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

Спасибо, выкрутился уже: тремя постами ранее

Жаль, что при записи в БД того же Order не обойтись без извлечения Cuctomer из БД:
Код: plaintext
\npublic void SaveNewOrder(Order order)\n{\n...\n  order.Customer = session.Load<Customer>(order.CUSTOMER_ID);\n...\n}\n
Или и здесь я чего-то недосмотрел? Напр. какого либо "каскадного" указания в маппинге?..
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831029
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль

Не нужно извлекать.

Код: plaintext
Customer customer = new Customer { CustomerID = 3 };
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831043
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУКурдль

Не нужно извлекать.

Код: plaintext
Customer customer = new Customer { CustomerID = 3 };


Круто! И оно не подерется с уже существующим в базе Customer с ID = 3?
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831060
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдлёчек, что мешает попробовать, религиозное воспитание? )

P.S. Есть такое религиозное воспитание делать ридонливыми ключи сущностей. Не делайте так, если хотите оптимальные запросы.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831076
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

Да вот только хотел спросить, ведь это противоречит
Код: plaintext
1.
2.
3.
4.
5.
public class Customer
    {
        public virtual int CUSTOMER_ID { get; protected set; }
...
     }
Кстати, такая религиозная конструкция изображена во всех прочитанных мною "руководящих документах"!
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831088
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдльпротиворечит
Его вообще трогать не нужно.

КурдльКстати, такая религиозная конструкция изображена во всех прочитанных мною "руководящих документах"!
В топку такие инструкции! Иначе Вы лишаетесь способа использования сущности без выдёргивания её из базы.
Выбирайте, что Вам дороже: оптимизация или гламурь.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831109
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ Иначе Вы лишаетесь способа использования сущности без выдёргивания её из базы.
Выбирайте, что Вам дороже: оптимизация или гламурь.
А если настроить геттер на приватное поле, устанавливаемое только в конструкторе, получится "и вашим, и нашим"?
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831119
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльА если настроить геттер на приватное поле, устанавливаемое только в конструкторе, получится "и вашим, и нашим"?
А с чего это вдруг конструктор должен проводить инициацию? Не забывайте про паттерны репозитория и иже, которые хранят в себе бизнес-слой.
P.S. Не выдумывайте, короче.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831141
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,
Т.е. Вы уверены, что ПК помечены protected из чисто религиозных соображений пущей защищенности? Никаких граблей у Вас со "снятием защиты" не возникало?
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831169
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль, зачем Вы меня заставляете повторять дважды?
Я же вам уже дал ответ:

МСУВыбирайте, что Вам дороже: оптимизация или гламурь.

Думайте сами.

P.S. По сабжу: с введением дополнительного FK-поля я сомневаюсь, что Вы сможете сохранить сущность в базе. Лично я использую sql-query + Transformer (Class) для сложных участков, требующих оптимизации, чего и Вам советую.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831231
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, для сложных трансформаций из sql-query всегда хорошо иметь под рукой свой кастомный транформатор (от IResultTransformer).
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831261
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУс введением дополнительного FK-поля я сомневаюсь, что Вы сможете сохранить сущность в базе.
Я обращаюсь на форум не для досужего базара. Все подходящие мне варианты стараюсь проверять.
Предложенное Вами:
Код: plaintext
1.
2.
3.
4.
5.
public void SaveNewOrder(Order order)
{
...
  order.Customer = new Customer { CUSTOMER_ID = 3; }
...
}
прекрасно отработало. Спасибо!

Другое дело, что не удается повторить возможное в Linq2Sql:
Код: plaintext
1.
2.
3.
4.
5.
public void SaveNewOrder(Order order)
{
...
  order.CUSTOMER_ID = 3; //Nhibernate при таком присвоении вываливает ошибку
...
}
после которого Order в БД получает связь с Customer, у которого ID = 3.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831267
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльПредложенное Вами ... прекрасно отработало. Спасибо!
Ок, теперь Вы прочувствовали негатив религиозных конструкций, предлагаемых на различных сайтах уважаемыми пионерами-говнопесателями? )

КурдльNhibernate при таком присвоении вываливает ошибку
И правильно, что выдаёт.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831291
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль, вы вообще, читаете, что Вам пишут?

МСУP.S. По сабжу: с введением дополнительного FK-поля я сомневаюсь, что Вы сможете сохранить сущность в базе.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831317
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУКурдль, вы вообще, читаете, что Вам пишут?

МСУP.S. По сабжу: с введением дополнительного FK-поля я сомневаюсь, что Вы сможете сохранить сущность в базе.

Да, конечно же читал!
Но создавалась эта ветка форума, чтобы понять, как лучше организовать чтение, - с особенностями записи я смирился. Но в результате обсуждения обрел даже больше, чем ожидал - спасибо Вам!
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831338
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдлькак лучше организовать чтение
Ещё раз акцентирую Ваше внимание на sql-query + Transformer (Class)!

P.S. Не нужно мучать реальную сущность. Сегодня Вы вводите новые члены, завтра возникает еще задача - опять новые пропертя?
P.S2. Последний раз говорю, больше не буду повторять: маппируйте "задачу" не в базовую сущность, а в отдельный класс(ы), предназначенный для той самой задачи, и работайте с этой самой сущностью.

Вот Вам, бабушка, и Юрьев день оптимизация :)
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831378
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУP.S. Не нужно мучать реальную сущность. Сегодня Вы вводите новые члены, завтра возникает еще задача - опять новые пропертя?
P.S2. Последний раз говорю, больше не буду повторять: маппируйте "задачу" не в базовую сущность, а в отдельный класс(ы), предназначенный для той самой задачи, и работайте с этой самой сущностью.
1. Откуда возьмутся новые пропертя, если в предметной области и даже в БД они не появились?
2. А это наводит на грустные мысли: "нахрена я перешел с ADO.NET на NHibernate, если все равно моя модель обрастет сущностями, выходящими за рамки DDD, всякими там DTO и т.п." :(
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831415
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль1. Откуда возьмутся новые пропертя, если в предметной области и даже в БД они не появились?
Как Вы недальнозорки... :)
Задача: формирование продукт листа
Доступные атрибуты (те, которые нужны для продукт листа): ProductID (Products), ProductName (Products), CategoryID (Products), CategoryName (Categories)
Нагрузка на систему: 10000 пользователей
Приблизительное кол-во продукции: ~ 10 млн записей

Сформируйте мне этот список средствами хибера. Жду.

[/quot]2. А это наводит на грустные мысли: "нахрена я перешел с ADO.NET на NHibernate, если все равно моя модель обрастет сущностями, выходящими за рамки DDD, всякими там DTO и т.п." :([/quot]
Так всегда было и будет. ORM - это универсальный механизм, а не лекарственное средство от панацеи. Как только появляется задача не вида хеллоу ворлд, приходиться выходить за грани...
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831417
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль1. Откуда возьмутся новые пропертя, если в предметной области и даже в БД они не появились?
Как Вы недальнозорки... :)
Задача: формирование продукт листа
Доступные атрибуты (те, которые нужны для продукт листа): ProductID (Products), ProductName (Products), CategoryID (Products), CategoryName (Categories)
Нагрузка на систему: 10000 пользователей
Приблизительное кол-во продукции: ~ 10 млн записей

Сформируйте мне этот список средствами хибера. Жду.

Курдль2. А это наводит на грустные мысли: "нахрена я перешел с ADO.NET на NHibernate, если все равно моя модель обрастет сущностями, выходящими за рамки DDD, всякими там DTO и т.п." :(
Так всегда было и будет. ORM - это универсальный механизм, а не лекарственное средство от панацеи. Как только появляется задача не вида хеллоу ворлд, приходиться выходить за грани...
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831494
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, по вопросу "нахрена": недавно дискутировали в соседней ветке , понравилось высказывание LR:

LRменьше свободы - больше надежности и управляемости, больше свободы - меньше надежности и управляемости...

P.S. Вот такие, Курдлёчек, дела ... :)
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831741
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ
Задача: формирование продукт листа
Доступные атрибуты (те, которые нужны для продукт листа): ProductID (Products), ProductName (Products), CategoryID (Products), CategoryName (Categories)

На мой бесстрашный дилетантский взгляд - одна проекция и "fetch-join" приведут к одному единственному запросу, что не сильно "опаснее" чистого SQL-запроса от ADO.NET.

Теперь Ваш вариант - где подвох?
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831845
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдльдилетантский взгляд
Ну не прибедняйтесь, все знают что Вы бесстрашный гура флюентист! :)

Курдльодна проекция и "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.
CREATE TABLE [dbo].[Products](
	[ProductID] [int] IDENTITY( 1 , 1 ) NOT NULL,
	[ProductName] [nvarchar]( 40 ) COLLATE Cyrillic_General_CI_AS NOT NULL,
	[SupplierID] [int] NULL,
	[CategoryID] [int] NULL,
	[QuantityPerUnit] [nvarchar]( 20 ) COLLATE Cyrillic_General_CI_AS NULL,
	[UnitPrice] [money] NULL CONSTRAINT [DF_Products_UnitPrice]  DEFAULT (( 0 )),
	[UnitsInStock] [smallint] NULL CONSTRAINT [DF_Products_UnitsInStock]  DEFAULT (( 0 )),
	[UnitsOnOrder] [smallint] NULL CONSTRAINT [DF_Products_UnitsOnOrder]  DEFAULT (( 0 )),
	[ReorderLevel] [smallint] NULL CONSTRAINT [DF_Products_ReorderLevel]  DEFAULT (( 0 )),
	[Discontinued] [bit] NOT NULL CONSTRAINT [DF_Products_Discontinued]  DEFAULT (( 0 )),
 CONSTRAINT [PK_Products] PRIMARY KEY CLUSTERED 
(
	[ProductID] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]


А если бы мы рассмотрели задачу Northwind..Employees? Корень зла - в поле Photo (image)?

P.S. Вот поэтому, милый Курдлёк, ситуацию спасйт только IResultTransformer.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36831878
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

DBA - рабочая лошадка из Департамента сопровождения автоматизированных систем, которая не имеет никакого права издавать звуки из своего болота! Если у него какие-то проблемы с производительностью вверенных АС - значит он прос...ал деньги, выделенные на покупку аппаратных средств, или закупил г...но за откаты ;)

А если серьезно, сейчас копаю в сторону ленивой загрузки отдельных полей, в основном из-за упомянутых BLOB-ов.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36832018
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльDBA - рабочая лошадка из Департамента сопровождения автоматизированных систем, которая не имеет никакого права издавать звуки из своего болота!
Пойдите расскажите это на сиквельном форуме, а я посмотрю издали :)

КурдльЕсли у него какие-то проблемы с производительностью вверенных АС - значит он прос...ал деньги, выделенные на покупку аппаратных средств, или закупил г...но за откаты ;)
А Вы не думали, что корень беспощадного зла может таиться в вверителях? :)

КурдльА если серьезно, сейчас копаю в сторону ленивой загрузки отдельных полей, в основном из-за упомянутых BLOB-ов.
Ну-ну... )
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36832048
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУКурдльА если серьезно, сейчас копаю в сторону ленивой загрузки отдельных полей, в основном из-за упомянутых BLOB-ов.
Ну-ну... )

А что?!! Один величайший гуру Nhibernate с одноименного сайта .ru сказал, что достаточно полю поставить lazy="true", как оно тут же перестает грузиться, когда его не просят!
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36832077
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И Вы, конечно, уже опробовали лекарственное средство этого величайшего гуру? :)
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36832111
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУИ Вы, конечно, уже опробовали лекарственное средство этого величайшего гуру? :)
Ну ясен... пень! Что-та нет пока клинического эффекта. Но упорство должно победить! ;)
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36832119
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльЧто-та нет пока клинического эффекта. Но упорство должно победить! ;)
А, может, это вовсе не величайший гуру, а, всего-навсего, гурка мелкого пошива?
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36832157
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльНо упорство должно победить! ;)
У Вас есть одно очень наихреновейшее свойство, Курдлёк :)
Вы прёте как баран на стену и не хотите видеть, что есть за той стеной. Там, конечно, могут быть и золотые слитки, но может быть и большая куча коровьего навоза, дурно манящая поганых мух. Вам нужны поганые мухи?

Итак, предположим, что Вы добились ленивой загрузки пропертей на основе маппинга:

Исходные данные: есть 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

Внимание вопрос: Вы всё-время будете править маппинги? Или сразу сделаете все поля сущности ленивыми?

Что скажете, коллега? :)
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36832164
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ
А, может, это вовсе не величайший гуру, а, всего-навсего, гурка мелкого пошива?
Не знаю, вроде как парень он отзывчивый - аккуратно отвечает на каждый вопрос по вечерам. Правда ответы как-то не очень...
Зато похоже - сам создатель сайта, а это звучит гордо!
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36832192
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУИ Вы, конечно, уже опробовали лекарственное средство этого величайшего гуру? :)

Курдль, не буду мучать Вас :) Попробую пнуть сапогом в сторону Castle Proxy Factory. Что скажете? )
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36832227
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ
Внимание вопрос: Вы всё-время будете править маппинги? Или сразу сделаете все поля сущности ленивыми?

Что скажете, коллега? :)

Коллега! Я предпочитаю жрать слона по частям!
Сейчас меня геморроит одно BLOB поле в одной сущности. В проекте больше таких не предвидится.
Если мне неведомо универсальное решение, которое спасет весь мир, но я смогу найти частное для моего проекта, который, в свою очередь, просоответствует характеристикам из ТЗ - то да будет так! А к универсальному решению я вернусь, когда дорасту.
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36832239
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУМСУИ Вы, конечно, уже опробовали лекарственное средство этого величайшего гуру? :)

Курдль, не буду мучать Вас :) Попробую пнуть сапогом в сторону Castle Proxy Factory. Что скажете? )

Скажу спасибо и начну морщить репу над этим ;)
...
Рейтинг: 0 / 0
Чем отличается Nhibernate и Linq2SQL?
    #36832266
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльЯ предпочитаю жрать слона по частям!
Смотрите, как бы вместо части слона не попалось крылышко поганой мухи с той навозной кучи. Вот оно (поганое крылышко) и подпортит Вам аппетит.
...
Рейтинг: 0 / 0
54 сообщений из 54, показаны все 3 страниц
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Чем отличается Nhibernate и Linq2SQL?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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