强制转换类型化列表<>为数据适配器更新做好准备



我们有这个:

List<Person> listPerson ;

想要在SqlDataAdapter中使用列表人的数据

类似于:

adapter.Update(listPerson);

可能性可能将 listPerson 转换为 List<DataRow> 或 A 数据表或任何其他适配器的更新方法可接受的内容......

LinQ 或任何更健壮的代码值得赞赏,

你建议哪种方式?

我能想到的最接近:

DataTableExtensions.CopyToDataTable

您可能需要一个 lambda 才能将 Person 转换为 PersonRow

SqlDataAdapter.Update 方法可以采用类型的参数

1) 更新(数据行[]) 2) 更新(数据集) 3) 更新(数据表) 4) 更新(数据行[], 数据表映射) 5) 更新(数据集,字符串)

因此,当您已经拥有人员列表时,最简单的方法是:

        DataRow[] personRows= Persons.Cast<DataRow>().ToArray();
        sqlDataAdapter.Update(personRows);

希望这有帮助....

最新更新