ListView项绑定不起作用

时间:2013-07-18 12:32:15

标签: asp.net listview binding webforms

我是asp.net(webforms)的新手。我按照本教程 - > http://www.asp.net/web-forms/tutorials/aspnet-45/getting-started-with-aspnet-45-web-forms/ui_and_navigation

在Site.Master中

我添加了以下代码,如教程中所述:

    <section style="text-align: center; background-color: #fff">
        <asp:ListView ID="categoryList"
            ItemType="VanchoWorks.Models.Category"
            runat="server"
            SelectionMethod="GetCategories" >
            <ItemTemplate>
                <b style="font-size: large; font-style: normal">
                    <a href="/ProductList.aspx?id=<%#: Item.CategoryID %>">
                        <%#: Item.CategoryName %>
                    </a>
                </b>
            </ItemTemplate>
            <ItemSeparatorTemplate> - </ItemSeparatorTemplate>
        </asp:ListView>
    </section>

在代码隐藏(Site.Master.cs)

    public IQueryable<Category> GetCategories()
    {
        var db = new ProductContext();
        IQueryable<Category> query = db.Categories;
        return query;
    }

但是当我运行应用程序时,没有显示ListView的迹象。我在GetCategories()第1行添加了断点,但它并没有就此止步,这让我觉得我没有很好地设置SelectionMethod。那是为什么?

2 个答案:

答案 0 :(得分:1)

将SelectionMethod =“GetCategories”更改为SelectMethod =“GetCategories”

答案 1 :(得分:0)

绑定列表视图像这样

public  GetCategories()
    {
        var db = new ProductContext();
        IQueryable<Category> query = db.Categories;

        ListView1.DataSource=query;
        ListView1.DataBind();
    }

在页面加载中调用此方法从html其他视图中删除SelectionMethod =“GetCategories”,它将显示错误。

希望它能帮到你