- PVSM.RU - https://www.pvsm.ru -
Всем привет. Буквально несколько минут назад мы выпустили NHibernate 3.3.3.GA. Забрать можно с sf.net [1] или установить с помощью менеджера пакетов NuGet [2].
Это минорный релиз, но кроме исправления багов и недочетов мы приготовили немного вкусного. В основном этот релиз был направлен на улучшение Linq провайдера:
Sin, Cos и другие тригонометрические функции из класса System.Math.var emplyee = (
from emoloyee in db.Employees
select new
{
EmployeeId = employee.EmployeeId,
OrderIDs = employee.Orders.Select(o => o.OrderId)
}
).ToArray();
* На данный момент в подзапросы нельзя добавлять дополнительные критерии.
ПРЕДОСТЕРЕЖЕНИЕ:
В версиях до 3.3.3.CR1 обработка метода
Take()содержала логическую ошибку: было не важно, в каком месте запроса находился вызов данного метода — он всегда обрабатывался так, как будто вызов метода был расположен в конце. В версии 3.3.3 это поведение было исправлено — теперьTake()обрабатывается корректно в соответсвии с его семантикой. Таким образом следующие запросы могут выдавать разные результаты.session.Query<Foo>.OrderBy(...).Take(5).Where(...);session.Query<Foo>.Where(...).OrderBy(...).Take(5);В версии 3.3.3 и выше первый запрос будет генерировать подзапрос, который будет применять ограничение на количество строк перед условием where.
Полный список изменений можно посмотреть тут [3].
Сообщать о найденых багах вы можете в JIRA [4]. Исходный код доступен на GitHub [5].
Огромное спасибо всем тем, кто принимал участие в выпуске этого релиза.
Автор: alexanderzaytsev
Источник [6]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/net/29636
Ссылки в тексте:
[1] sf.net: http://sourceforge.net/projects/nhibernate/?source=directory
[2] NuGet: http://nuget.org/packages/NHibernate/3.3.3.4000
[3] тут: https://nhibernate.jira.com/issues/?jql=project%20%3D%20NH%20AND%20fixVersion%20in%20%28%223.3.3.CR1%22%2C%20%223.3.3.GA%22%29%20AND%20status%20in%20%28Resolved%2C%20Closed%29
[4] JIRA: https://nhibernate.jira.com/browse/NH
[5] GitHub: https://github.com/nhibernate/nhibernate-core
[6] Источник: http://habrahabr.ru/post/173137/
Нажмите здесь для печати.