неверный тип преобразования 'System.Data.DataSet' в ошибку 'string' - PullRequest
0 голосов
/ 25 мая 2020

У меня есть datagrid, где я показываю свою базу данных с фильмами. Я создал текстовое поле, и я хотел бы отфильтровать эту сетку данных, когда я пишу Это мой код события

        protected void wyszukaj_txt_TextChanged(object sender, EventArgs e)
    {
        string qry = "select tytul, rok_produkcji, gatunek, cena from filmy where tytul like'" + szukaj.Text + "'";
        con.Open();
        SqlDataAdapter ad = new SqlDataAdapter(qry, con);
        DataSet ds = new DataSet();
        ad.Fill(ds);
        GridView1.DataSource = ds;
        GridView1.DataBind();
        con.Close();
    }

, и это код таблицы данных

<asp:GridView ID="GridView1" runat="server" AllowSorting="True" AutoGenerateColumns="False" BackColor="White" BorderColor="#999999" BorderStyle="None" BorderWidth="1px" CellPadding="3" DataSourceID="SqlDataSource1" GridLines="Vertical" Height="356px" OnSelectedIndexChanged="GridView1_SelectedIndexChanged1" RowHeaderColumn="cena" style="z-index: 1; left: 154px; top: 519px; position: absolute; height: 356px; width: 1120px; margin-right: 0px">
        <AlternatingRowStyle BackColor="#DCDCDC" />
        <Columns>
            <asp:BoundField DataField="id_filmu" HeaderText="ID" ReadOnly="True" SortExpression="id_filmu" Visible="False" />
            <asp:BoundField DataField="tytul" HeaderText="Tytuł" SortExpression="tytul" />
            <asp:BoundField DataField="gatunek" HeaderText="Gatunek" SortExpression="gatunek" />
            <asp:BoundField DataField="rok_produkcji" HeaderText="Rok produkcji" SortExpression="rok_produkcji" />
            <asp:BoundField DataField="cena" HeaderText="Cena" SortExpression="cena" />



            <asp:TemplateField HeaderText="Kup">
                <ItemTemplate>
                    <asp:Button ID="Button1" runat="server" CommandName="Kup" CommandArgument="<%#((GridViewRow)Container).RowIndex %>" Text="Kup" />
                </ItemTemplate>
            </asp:TemplateField>



        </Columns>
        <FooterStyle BackColor="#CCCCCC" ForeColor="Black" />
        <HeaderStyle BackColor="#000084" Font-Bold="True" ForeColor="White" />
        <PagerStyle BackColor="#999999" ForeColor="Black" HorizontalAlign="Center" />
        <RowStyle BackColor="#EEEEEE" ForeColor="Black" />
        <SelectedRowStyle BackColor="#008A8C" Font-Bold="True" ForeColor="White" />
        <SortedAscendingCellStyle BackColor="#F1F1F1" />
        <SortedAscendingHeaderStyle BackColor="#0000A9" />
        <SortedDescendingCellStyle BackColor="#CAC9C9" />
        <SortedDescendingHeaderStyle BackColor="#000065" />
    </asp:GridView>

Когда я пытаюсь нажать введите У меня исключение. Дополнительная информация: Элементы DataSource и DataSourceID определены в GridView1. Я понимаю, что у меня есть дубликат этого источника данных, но я не знаю, как его изменить. Я попытался поместить «DataSourceID», где сейчас только (.cs файл) DataSource, но затем у меня есть ошибка относительно типа (набора данных). Кто-нибудь, помогите, пожалуйста? Большое спасибо!

1 Ответ

0 голосов
/ 26 мая 2020

В вашем запросе

string qry = "select tytul, rok_produkcji, gatunek, cena from filmy where tytul like'" + szukaj.Text + "'";

Столбец id_filmu не существует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...