Boa tarde galera sou novo por aqui e estou com um pequeno problema… Estou testando um WCF e uma das minhas consultas retornaram mais de 20 mil linhas. e precisava dar um select no datatable de retorno para fazer a inclusão pois está dando timeout.
Teria como fazer isso ???
ex.:
dim dt as datatable
dt = Select
dim dr as datarow()
dr = dt.select("top 100")
Seria algo assim…
É possível fazer isso. Você pode utilizar um extension method chamado Take.
Veja um exemplo de código que elaborei num Console Application.
DataTable datatable = new DataTable();
datatable.Columns.Add("Id");
datatable.Columns.Add("Descricao");
for (int i = 0; i < 1000; i++)
{
datatable.Rows.Add(i, Guid.NewGuid().ToString());
}
// O Take vai pegar os 100 primeiros
foreach (DataRow row in datatable.AsEnumerable().Take(100))
{
Console.WriteLine(row["Id"] +" "+ row["Descricao"]);
}
Console.Read()
1 curtida