我在数据集上使用LINQ,但只是为了从某些表中获取数据,顺便说一下我很有兴趣使用LINQ2SQL填充那些DataTables因为我最近发现在一些内存小于1GB的客户端上,机器内存缺乏并冻结1或2秒,它就会正常,对客户来说是令人沮丧的。
...那么如何使用LINQ2SQL来填充DataTables而不是使用TableAdapter?
由于
答案 0 :(得分:1)
在这个示例中,我构建了一个数据表,并且我有一个使用Linq to SQL从SQL查询的名称对象列表。循环遍历名称对象列表,从每个字段构建对象数组。然后将该数组添加到数据表中。如果内存是个问题,我会完全避免使用数据表。该数据表通常使用的内存多于通用列表。
public void LoadStandardizedNames(List<StandardName> names)
{
using (DataTable table = CreateNamesTable())
{
names.ForEach(name => table.LoadDataRow(new object[]
{
name.BatchId,
name.FirstName,
name.MiddleName,
name.LastName,
name.NameSuffix,
name.Gender,
name.ChangeCode,
}, true));
}
}