как использовать табличные подсказки в Linq to SQL - PullRequest
6 голосов
/ 01 апреля 2012

как использовать табличные подсказки в Linq to sql при вызове метода отправки изменений

dataContext.table2.something = dataContext.table1.something;
dataContext.SubmitChanges();    

Я хочу использовать его как этот код SQL:

declare @var int;
begin transaction
select @var = something from table1 with (HoldLock);
update table2 set something = @var;
update table1 set something = @var + 1;
commit transaction;

Ответы [ 2 ]

2 голосов
/ 01 апреля 2012

Это невозможно.

На самом деле, это возможно, если сделать серьезный неприятный взлом с помощью отражения.Вы можете скомпилировать запрос, а затем поиграть с сгенерированной строкой SQL в каком-то внутреннем объекте.Это наименее желательный способ сделать это.

Я рекомендую вам остаться с сырым SQL для этого.

1 голос
/ 01 апреля 2012

Я всегда слышал, что это невозможно сделать. Цель Linq (или, по крайней мере, одного из них) состоит в том, чтобы избавиться от SQL, или нет, поэтому вам не нужно беспокоиться о таких вещах. Я предлагаю вам добавить код с подсказкой таблицы в процедуру SQL и использовать Linq для ее вызова.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...