В основному у мене є веб-сторінка, на яку я набираю текствікно це викликає пост назад, що я просто хочу заповнити мій datatable. Howevr, я не можу для життя мене розуміння, як заповнити цю datatable використання завдання.
Будь-яка допомога буде чудово!
protected void RadInput_TextChanged(object sender, EventArgs e)
{
Task<DataTable> mytab = myTable(simpleTextBox.Text);
simpleGrid.DataSource = mytab;
simpleGrid.DataBind();
Page.ClientScript.RegisterStartupScript(this.GetType(), "refocus", "refocus()", true);
}
private async Task<DataTable> myTable(string searchClause)
{
DataTable myTab = new DataTable();
myTab.Columns.Add("Results");
for (int i = 0; i < myResults.Length; i++)
{
if (myResults[i].ToLower().StartsWith(searchClause.ToLower()))
{
DataRow dtRow = myTab.NewRow();
dtRow[0] = myResults[i];
myTab.Rows.Add(dtRow);
}
}
return myTab;
}
private static string[] myResults = { "Apples", "Pears", "Bananas", "Oranges", "Advil", "Populate", "Bear" };
Відповіді:
0 для відповіді № 1Ви не можете прив'язати сітку до завдання.
Якщо ви хочете використовувати завдання, ви можете скористатися одним з наступних
simpleGrid.DataSource =await mytab; //You must mark the event as async
або
simpleGrid.DataSource =mytab.Result;
Якщо ви не маєте операції вводу-виводу всередині myTable (), ви можете просто повернути DataTable, а не Task
Докладніше про завдання можна дізнатися тут Завдання паралельної бібліотеки