Saya ingin menambahkan beberapa baris ke database menggunakan Linq ke SQL, tetapi saya ingin membuat "pemeriksaan khusus" sebelum menambahkan baris untuk mengetahui apakah saya harus menambahkan, mengganti, atau mengabaikan baris incomming. Saya ingin menjaga trafik antara klien dan server DB serendah mungkin dan meminimalkan jumlah kueri.
Untuk melakukan ini, saya ingin mengambil informasi sesedikit yang diperlukan untuk validasi, dan hanya sekali pada awal proses.
Saya berpikir untuk melakukan sesuatu seperti ini, tetapi jelas, itu tidak berhasil. Adakah yang punya ide?
Dictionary<int, DateTime> existingItems =
(from ObjType ot in TableObj
select (new KeyValuePair<int, DateTime>(ot.Key, ot.TimeStamp))
)
Apa yang ingin saya miliki pada akhirnya adalah Kamus, tanpa harus mengunduh seluruh objek ObjectType dari TableObject.
Saya juga mempertimbangkan kode berikut, tetapi saya berusaha menemukan cara yang tepat:
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]);
}