У меня есть похожий вопрос.В частности, я хотел создать проекцию, которая была бы объединением нескольких полей.Вместо использования SqlProjection я использовал:
Projections.SqlFunction("concat",
NHibernateUtil.String,
Projections.Property("Field"),
Projections.Constant(" "),
Projections.Property("Field2",
Projections.Constant(" "),
Projections.Property("Field3")
);
Это основано на модульном тесте NHibernate: UsingSqlFunctions_Concat_WithCast.Это работает на SQL Server, несмотря на то, что «concat» не является нативной функцией.