Я пытаюсь обновить Datatable со значением словаря на основе ключа, соответствующего совпадению со словарем. Ниже приведен фрагмент кода. Он не обновляется.Обновление datatable с использованием условия на основе linq с использованием словаря
class Program
{
static void Main(string[] args)
{
DataTable dt = new DataTable();
dt.Columns.Add("col1");
dt.Columns.Add("value");
DataRow dr = dt.NewRow();
dr["col1"] = "key1";
dr["value"] = "No";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["col1"] = "key2";
dr["value"] = "Yes";
dt.Rows.Add(dr);
dr = dt.NewRow();
dr["col1"] = "key3";
dr["value"] = "No";
dt.Rows.Add(dr);
Dictionary<string, string> test = new Dictionary<string, string>();
test.Add("key1", "Yes");
test.Add("key2", "No");
test.Add("key3", "No");
dt.AsEnumerable().Where(r => r["col1"] == test.Select(x => x.Key)).ToList<DataRow>().ForEach(y => y["value"] = "Yes");
dt.AcceptChanges();
}
}
Спасибо. это сработало. – Hemil
@Hemil: тогда подумайте, чтобы принять его. Пожалуйста :) –