Tôi muốn thêm một số hàng vào cơ sở dữ liệu bằng cách sử dụng LINQ to SQL, nhưng tôi muốn tạo "kiểm tra tùy chỉnh" trước khi thêm các hàng cần biết nếu tôi phải thêm, thay thế hoặc bỏ qua các hàng đang mở . Tôi muốn giữ thông tin giữa máy khách và máy chủ DB càng thấp càng tốt và giảm thiểu số lượng truy vấn.Chuyển đổi kết quả truy vấn LINQ sang từ điển
Để thực hiện việc này, tôi muốn tìm nạp ít thông tin theo yêu cầu để xác thực và chỉ một lần ở đầu quá trình.
Tôi đã nghĩ đến việc làm một cái gì đó như thế này, nhưng rõ ràng, nó không hoạt động. Bất cứ ai có một ý tưởng?
Dictionary<int, DateTime> existingItems =
(from ObjType ot in TableObj
select (new KeyValuePair<int, DateTime>(ot.Key, ot.TimeStamp))
)
Điều tôi muốn có ở cuối sẽ là Từ điển, mà không phải tải xuống toàn bộ đối tượng ObjectType từ TableObject.
Tôi cũng coi đoạn mã sau, nhưng tôi đã cố gắng tìm một cách thích hợp:
List<int> keys = (from ObjType ot in TableObj orderby ot.Key select ot.Key).ToList<int>();
List<DateTime> values = (from ObjType ot in TableObj orderby ot.Key select ot.Value).ToList<int>();
Dictionary<int, DateTime> existingItems = new Dictionary<int, DateTime>(keys.Count);
for (int i = 0; i < keys.Count; i++)
{
existingItems.Add(keys[i], values[i]);
}
T là gì ở đây ??? – PawanS
@pawan, đó là trình giữ chỗ cho từng phần tử trong điều tra và đưa vào loại đối tượng trong điều tra. – tvanfosson
@ tvanfosson bạn có thể giải thích cho tôi điều đó không. Tôi không thể hiểu được. Bây giờ requirment của tôi là để chuyển đổi A Linq để từ điển. Vấn đề là giá trị là một chuỗi (tạo trong LINQ) định dạng và chìa khóa là p "" "var serverUrl = (từ p trong danh sách [i] .ProjectName chọn {(" tcp: // "+ list [i] .BuildMachineName +" : "+ list [i] .PortNumber +" /CruiseManager.rem ", p)}" "" – PawanS