2012-03-31 25 views
6

làm thế nào để sử dụng gợi ý bảng trong LINQ to SQL khi gọi gửi các thay đổi phương pháplàm thế nào để sử dụng gợi ý bảng trong LINQ to SQL

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

tôi muốn sử dụng nó như mã sql này:

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; 
+0

Gần trùng lặp: http://stackoverflow.com/questions/4104323/how-to-use-sql-server-table-hints-while-using-linq –

+0

Bạn cần thêm chính xác những gợi ý nào? Tùy thuộc vào nó có thể có các giải pháp khác nhau. – JotaBe

Trả lời

1

Tôi luôn nghe rằng không thể thực hiện được. Mục tiêu của Linq (hoặc ít nhất một trong số họ) là lấy hoặc ra khỏi SQL để bạn không phải lo lắng với những thứ như thế này. Tôi đề nghị bạn thêm mã của bạn với gợi ý bảng vào một thủ tục SQL và sử dụng LINQ để gọi nó.

+0

không may vì một số lý do tôi không thể sử dụng thủ tục được lưu trữ – Star

+0

về chế độ xem, chức năng bảng? hoặc bạn không thể tạo bất kỳ đối tượng nào trên DB – Diego

+0

tôi chỉ có thể tạo chế độ xem nhưng cách này có thể trợ giúp như thế nào ?? – Star

2

Điều này là không thể.

Thực ra, có thể thực hiện bằng cách thực hiện việc tấn công khó chịu nghiêm trọng bằng cách sử dụng sự phản chiếu. Bạn có thể biên dịch một truy vấn, và sau đó fiddle với chuỗi SQL được tạo ra trong một số đối tượng nội bộ. Đây là cách ít nhất để làm điều này.

Tôi khuyên bạn nên ở lại với SQL thô cho tiện ích này.

Các vấn đề liên quan