ASP.NET DataSource & GridView ligação de dados, definindo um valor de parâmetro programaticamente
-
20-08-2019 - |
Pergunta
Então, eu tenho um GridView com um ObjectDataSource, e eu quero um programaticamente conjunto dos SelectParameters do ObjectDataSource.
Eu tentei (durante tanto Page_Load e DropdownList__SelectedIndexChanged)
objectDataSource.SelectParameters["my_parameter"].DefaultValue = "my_value";
objectDataSource.DataBind();
mas não funcionou. O que você sugere?
Solução
Armadilha do evento OnSelecting na fonte de dados.
protected void ObjectDataSource1_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
{
e.InputParameters["month"] = DateTime.Now.Month;
}
Outras dicas
Não importa, eu resolvi eu mesmo.
Em Page_Load:
objectDataSource.Selecting += new ObjectDataSourceSelectingEventHandler(objectDataSource_Selecting);
Em seguida, escreva o método manipulador:
void objectDataSource_Selecting(object sender, ObjectDataSourceSelectingEventArgs e)
{
int four = 2 + 2;
e.InputParameters["my_parameter"] = four;
}
Em seguida, certifique-se de vincular a algum lugar GridView
protected void dropDownList_SelectedIndexChanged(object sender, EventArgs e)
{
gridView.DataBind();
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow