bạn có thể viết nó giống như
IQueryable query = from staff in dataContext.Staffs;
query = from staff in query where (name1 != null && staff.name == name1);
Theo cách này, phần thứ hai của điều kiện của bạn sẽ không được đánh giá nếu điều kiện đầu tiên của bạn được đánh giá là false
Cập nhật:
nếu bạn viết
IQueryable query = from staff in dataContext.Staffs;
query = from staff in query where (name1 == null || staff.name == name1);
và name1 là null phần thứ hai của điều kiện của bạn sẽ không được đánh giá vì hoặc điều kiện chỉ yêu cầu một điều kiện để trả về true
làm ơn hãy xem liên kết này để biết thêm chi tiết