Баг при использовании SqlFunction атрибута?
От: MozgC США http://nightcoder.livejournal.com
Дата: 25.03.11 20:49
Оценка:
[SqlFunction("MySql",  "LAST_INSERT_ID", ServerSideOnly = true)]
public static T GetIdentity<T>()
{
    throw new LinqException("The 'GetIdentity' is a server side only function.");
}

...

var id = db.Select(() => Sql.GetIdentity<int>());

Генерирует запрос

SELECT LAST_INSERT_ID(Signed) as c1

Если избавиться от generic type параметра, и поставить например int, то отрабатывает нормально.
(При использовании SqlExpression так же отрабатывает нормально)
Re: Баг при использовании SqlFunction атрибута?
От: IT Россия linq2db.com
Дата: 25.03.11 21:36
Оценка:
Здравствуйте, MozgC, Вы писали:

MC>
[SqlFunction("MySql",  "LAST_INSERT_ID", ServerSideOnly = true)]
MC>public static T GetIdentity<T>()
MC>{
MC>    throw new LinqException("The 'GetIdentity' is a server side only function.");
MC>}

MC>...

MC>var id = db.Select(() => Sql.GetIdentity<int>());

MC>Генерирует запрос

Это не баг, это фича. Обобщённые параметры тоже передаются как параметры.

MC>
SELECT LAST_INSERT_ID(Signed) as c1

MC>Если избавиться от generic type параметра, и поставить например int, то отрабатывает нормально.
MC>(При использовании SqlExpression так же отрабатывает нормально)

Какой нужно получить SQL?
Если нам не помогут, то мы тоже никого не пощадим.
Re[2]: Баг при использовании SqlFunction атрибута?
От: MozgC США http://nightcoder.livejournal.com
Дата: 25.03.11 23:37
Оценка:
Здравствуйте, IT, Вы писали:

IT>Какой нужно получить SQL?


SELECT LAST_INSERT_ID() as c1
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.