Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
OdbcCommand dist_cmd = ifx_conn.CreateCommand();
dist_cmd.CommandText = string.Format(@"select -1 as districtid, '-=ВСІ=-' as districtname from systables where tabname = 'systables' union all
select id as districtid , cpz_name as districtname from post_cpz where directorate_id = {0} and id != 0 ORDER BY 2", (String.IsNullOrEmpty(DDL_obl.SelectedValue))?"-1":DDL_obl.SelectedValue);
reader = dist_cmd.ExecuteReader();
в процессе рефакторинга, убирая NHibernate код был заменен на это
массивы слишком сложны для понимания, давайте использовать переменные с цифрой на конце, их можно контролировать
циклы сложны для понимания, давайте использовать ^c ^v, их можно контролировать
Возможно речь шла о том, что NHibernate генерирует говнозапросы, а чем заставить его поумнеть, то проще написать запрос руками.
Но вообще не вижу смысла в объединении системной таблицы сервера и post_cpz, то есть это стопудов какаша:
>from systables where tabname = 'systables'
а в общем то
from systables where tabname = 'systables' - здесь очень глубокий смысл, это для того, чтобы добавить первую строчку в asp: DropDownList, типа "выберите ..."
Отака штука "select -1 as districtid, '-=ВСІ=-' as districtname union all ..." в Sql Server працює, а в Informix кидає креш. Через те лисий рішив зробити так.
ЗАЧЕМ?
В чём профит от замены ORM на голый SQL? Пусть автор тогда и с C# на ассемблер пересаживается.
циклы сложны для понимания, давайте использовать ^c ^v, их можно контролировать
Но вообще не вижу смысла в объединении системной таблицы сервера и post_cpz, то есть это стопудов какаша:
>from systables where tabname = 'systables'
зачем ЭТО?
*негодуэ*
from systables where tabname = 'systables' - здесь очень глубокий смысл, это для того, чтобы добавить первую строчку в asp: DropDownList, типа "выберите ..."
этого достаточно.
Зачем там конструкция FROM да еще и с WHERE?