J'utilise ASP.NET avec C# et subsonic. J'essaie de faire une recherche sur un champ de texte par nom et prénom.Recherche base de données par prénom et nom
First or Last Name: <asp:TextBox ID="txtSearchName" runat="server"></asp:TextBox>
<asp:linkButton runat="server" Text="Send" onclick="btnSubmit_Click" />
<asp:GridView
border="0"
cellpadding="3"
cellspacing="3"
ShowHeader="True"
allowsorting="true"
ID="GridView1"
runat="server"
AutoGenerateColumns="false"
Visible="false"
AllowPaging="True"
PageSize="10"
PagerStyle-Mode="NumericPages"
OnPageIndexChanging="GridView1_PageIndexChanging"
>
Dans le code derrière, j'ai ceci:
private void BuildGridView1()
{
GridView1.DataSource = new Select(PastAwardName.Schema.TableName + ".*", PastAwardType.Schema.TableName + ".*")
.From(PastAwardName.Schema)
.InnerJoin(PastAwardType.Schema.TableName, PastAwardType.Columns.VolID, PastAwardName.Schema.TableName, PastAwardName.Columns.VolID)
.Where(PastAwardName.Columns.LName).IsEqualTo(this.txtSearchName.Text)
.Or(PastAwardName.Columns.FName).IsEqualTo(this.txtSearchName.Text)
.OrderAsc(PastAwardType.Columns.AwardYear)
.ExecuteDataSet();
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
BuildGridView1();
GridView1.PageIndex = e.NewPageIndex;
GridView1.DataBind();
}
Cela fonctionne si vous entrez le prénom ou le nom, mais je veux être en mesure de rechercher les deux en même temps d'un champ de texte. Est-ce possible?
Merci pour les réponses! Cela a du sens, mais j'obtiens l'erreur suivante: Message d'erreur du compilateur: CS0650: Bad array declarator: Pour déclarer un tableau géré, le spécificateur de rang précède l'identificateur de la variable. Pour déclarer un champ de tampon de taille fixe, utilisez le mot-clé fixed avant le type de champ. Erreur de source: Ligne 55: { Ligne 56: Ligne 57: string names [] = String.Split (this.txtSearchName.Text, ""); – Brett
Ah oui, bug dans l'utilisation de la méthode split. C'est corrigé maintenant. –
J'ai changé la ligne ci-dessous mais je reçois toujours la même erreur ... string names [] = this.txtSearchName.Text.Split ("" .ToCharArray()); – Brett