2010-02-16 26 views
14

Tôi đang thiết Address của một lớp được tạo ra bởi LINQ 2 SQL và khi tôi cố gắng SubmitChanges(), truy vấn sql nó tạo ra là:Truy vấn cập nhật LINQ tạo ra ở đâu 0 = 1?

Update Users 
Set Address = @po 
Where 0 = 1 
[email protected]: Input VarChar (Size = 15; Prec = 0; Scale = 0) [123 45th Street] 

tôi không thể tìm ra lý do tại sao tôi nhận được ở đâu 0 = 1.

+1

Bạn cũng có thể đăng mã LINQ không? –

+0

Ngoại lệ liên quan: http://stackoverflow.com/questions/805968 – Johann

Trả lời

19

Điều này có thể xảy ra khi mô hình đối tượng của bạn khác với cơ sở dữ liệu thậm chí theo một thuộc tính.

Có thể Địa chỉ không có trong cơ sở dữ liệu và không có trong mô hình của bạn hay cách khác không? Hoặc loại khác, nói ntext vs nvarchar, vv? Trong một số trường hợp, nó có thể là một thuộc tính không liên quan khác ... hãy nghĩ lại sự thay đổi cuối cùng đối với cơ sở dữ liệu hoặc mô hình bạn đã tạo, đảm bảo rằng nó được đồng bộ hóa.

+0

Tôi sẽ xem xét, nhưng đó có phải là sự khác biệt giữa một thuộc tính trên bảng mà tôi đang cố cập nhật hoặc toàn bộ cơ sở dữ liệu không? – Xaisoft

+0

@Xaisoft - Hầu như luôn luôn liên quan đến bảng bạn đang cập nhật, nhưng tôi đã nhìn thấy những điều kỳ lạ xảy ra. –

+0

Cảm ơn, đó là nó. – Xaisoft

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