Добрый день!
Делаю веб-сервис на C#.
Данный запрос в консоли MS SQL работает:
SELECT SUM(UsrCost)
FROM UsrTouristOffer, UsrTours
WHERE UsrTouristOffer.UsrCode = '0001'
AND UsrTouristOffer.Id = UsrTours.UsrToursDetailId
AND UsrTours.UsrTourStateId = '916A6514-987E-4240-9E6A-46EB5DA1D21A';
Подскажите как сделать запрос из веб-сервиса в базу данных?
Pavel Litvinovich,
тут есть пример
var select = new Select(UserConnection) .Column("Contact", "Id").As("ContactId") .Column("Contact", "Name").As("ContactName") .Column("Account", "Id").As("AccountId") .Column("Account", "Name").As("AccountName") .From("Contact") .Join(JoinType.Inner, "Account") .On("Contact", "Id").IsEqual("Account", "PrimaryContactId") as Select;
Данный запрос с использованием класса Select или EntitySchemaQuery. подробнее и с примерами тут
Алексей Следь,
Это SQL запрос. Мне надо получить результат, а данные которые мне необходимы находятся в двух разных таблицах.
Представьте запрос в другом виде и используйте класс Select или EntitySchemaQuery
SELECT SUM(UsrCost) FROM UsrTouristOffer uo Inner join UsrTours ut on uo.Id = ut.UsrToursDetailId WHERE ou.UsrCode = '0001' AND ut.UsrTourStateId = '916A6514-987E-4240-9E6A-46EB5DA1D21A';
или вариант CustomQuery
Алексей Следь,
Спасибо! Пробую.
Алексей Следь,
Подскажите, не могу нигде найти пример.
Необходимо запрос, который нормально работает в MS SQL, переписать для Исходного кода на C#:
SELECT SUM(UsrCost)
FROM UsrTours
INNER JOIN UsrTouristOffer ON UsrTours.UsrToursInDetailId = UsrTouristOffer.Id
WHERE UsrTouristOffer.UsrCode = 'AAA'
AND UsrTourStateId = '123456789';.
(Чтобы получилось на подобии такого запроса:
Select selectChec = new Select(UserConnection)
.Column(Func.Count("Id"))
.From("UsrTouristOffer")
.Where("UsrCode").IsEqual(Column.Parameter(tourCode)) as Select;
resultChec = selectChec.ExecuteScalar<decimal>();
)
Pavel Litvinovich,
тут есть пример
var select = new Select(UserConnection) .Column("Contact", "Id").As("ContactId") .Column("Contact", "Name").As("ContactName") .Column("Account", "Id").As("AccountId") .Column("Account", "Name").As("AccountName") .From("Contact") .Join(JoinType.Inner, "Account") .On("Contact", "Id").IsEqual("Account", "PrimaryContactId") as Select;
Алексей Следь,
Спасибо огромное!