Я конвертирую устаревшее приложение Cold Fusion в ASP.NET Core. Приложение очень интенсивно использует данные, а код Cold Fusion использует встроенные SQL-запросы. Мне нужно перевести несколько запросов Cold Fusion в выражения запросов .NET. Например, ниже приведен типичный запрос Cold Fusion:
SELECT
s2.CriteriaID, s2.Response, s2.NA, s2.Status, s2.resubStatus, s2.staffDetermination, s2.resubStaffDetermination,
c.CriteriaDesc<cfif getAgency.agencyType NEQ "N">Short</cfif> criteriaDesc, ' ' long_desc
FROM tblASLStep2 s2
left outer join tblTableOfContentCriteria c on c.CriteriaNo = s2.criteriaID and c.meetingID = s2.meetingDate
where
s2.AgencyID = #session.AgencyID#
and s2.MeetingDate=#session.MeetingDate#
and (
(s2.response is not null and ltrim(cast(s2.response as nvarchar)) <> '')
or exists (
SELECT 1
FROM tblASLStep2_narratives n
WHERE
n.AgencyID = '#session.AgencyID#'
and n.CriteriaID = s2.criteriaID
and n.MeetingDate = #session.MeetingDate#
and n.narrativeType = 'R'
and n.response is not null
)
)
<cfif session.agencyType neq "F">
order by replace(replace(s2.CriteriaID, 'ix', 'viiii'), 'Agency Narrative', 1)
<cfelse>
and s2.criteriaID not like 'SEC5%'
union all
</cfif>
Я могу дойти до 'from' и SELECT, но LEFT OUTER JOIN, а затем части условного оператора бросают меня в петлю. Предполагая, что таблица и все другие переменные существуют, как лучше всего преобразовать это в выражение запроса .NET?
union all
). - person NetMage   schedule 10.12.2019union all
. Когда вы будете переводить это на .net, вы, возможно, захотите взглянуть на это. - person Dan Bracuk   schedule 10.12.2019