Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
实体框架搜索功能ASP.NET Webforms_Asp.net_Entity Framework_Search_Repeater - Fatal编程技术网

实体框架搜索功能ASP.NET Webforms

实体框架搜索功能ASP.NET Webforms,asp.net,entity-framework,search,repeater,Asp.net,Entity Framework,Search,Repeater,我有一个包含服装产品的SQL2014数据库 该数据库使用GridView、FormView、Repeater和实体框架集成到ASP.NET webforms网站中 我希望在网站上有一个简单的搜索功能,用户可以搜索产品的部分名称,然后在列表中显示产品名称(数据库字段称为“名称”) 我有一个文本框控件(txtWord)、按钮(btnSearch)和转发器(rptrSearch)来显示结果 然后,我在按钮上添加了一个方法,我相信该方法可以显示搜索结果,但我什么也没有得到 C#代码 protected

我有一个包含服装产品的SQL2014数据库

该数据库使用GridView、FormView、Repeater和实体框架集成到ASP.NET webforms网站中

我希望在网站上有一个简单的搜索功能,用户可以搜索产品的部分名称,然后在列表中显示产品名称(数据库字段称为“名称”)

我有一个文本框控件(txtWord)、按钮(btnSearch)和转发器(rptrSearch)来显示结果

然后,我在按钮上添加了一个方法,我相信该方法可以显示搜索结果,但我什么也没有得到

C#代码

protected void btnSearch_Click(object sender, EventArgs e)
    {
        string searchWord = txtWord.Text;

        ZaraEntities db = new ZaraEntities();

        var results = db.Products.Where(p => p.Name == searchWord);

        rptrSearch.DataSource = results.ToList();
        rptrSearch.DataBind();

    }
HTML

<asp:TextBox ID="txtWord" runat="server"></asp:TextBox>
<asp:Button ID="btnSearch" runat="server" Text="Button" />
<asp:Repeater ID="rptrSearch" runat="server">
    <HeaderTemplate>
        <div>
    </HeaderTemplate>

    <ItemTemplate>
        <div>
        </div>
    </ItemTemplate>

    <FooterTemplate>
        </div>
    </FooterTemplate>
</asp:Repeater>


代码是否有问题和/或与我的中继器为空有关?

是否希望数据显示在模板中?在这种情况下,您需要将控件添加到模板中,并将数据绑定表达式添加到模板中

编辑您可以尝试在代码隐藏中查找控件,然后将数据直接绑定到代码隐藏中的控件


又一次编辑

看起来您正试图完全匹配数据字段,而不是您指定的部分名称。
下面的代码片段显示了如何使用Contains操作符进行部分字段查找

试试这个:

var results = from p in db.Products
   where p.Name.Contains(searchWord)
   select p;

嗨,是的,我喜欢。我已将

添加到,但仍然没有结果。它是否有效?如果不把它放在服务器控件中,例如,我今天早上就知道了,但没有机会更新它。这是正确的答案,谢谢!