0

我似乎无法让我的数据寻呼机工作。我一直在寻找答案,似乎我得到的错误是“ID为'searchResults'的ListView必须有一个数据源,该数据源要么实现ICollection,要么如果AllowPaging为真,则可以执行数据源分页。” 很常见,通常答案是将 ToArray() 放在 DataSource 上。但是我不确定如何将数组放在我的链接语句中。有人可以请教。

     searchResults.DataSource = from r in response.Results
        select new
        {
            Title = r[SearchContentProperty.Title],
            Summary = r[SearchContentProperty.HighlightedSummary]
        };

    searchResults.DataBind(); 
4

2 回答 2

2

要将 ToArray() 添加到您的 LINQ 查询中,请尝试以下操作:

 searchResults.DataSource = (from r in response.Results
    select new
    {
        Title = r[SearchContentProperty.Title],
        Summary = r[SearchContentProperty.HighlightedSummary]
    }).ToArray();

searchResults.DataBind();
于 2012-06-29T20:58:01.750 回答
1
searchResults.DataSource = (from r in response.Results
select new
{
    Title = r[SearchContentProperty.Title],
    Summary = r[SearchContentProperty.HighlightedSummary]
}).ToArray();

searchResults.DataBind(); 是真的,

编辑:我遇到了几乎同样的问题,但如果仍然没有分页,你可以使用 searchResults PagePropertiesChanging 事件并编写这样的代码来获得分页正常

protected void searchResults_PagePropertiesChanging(object sender,PagePropertiesChangingEventArgs e)
{
DataPager1.SetPageProperties(e.StartRowIndex, e.MaximumRows, false);

//write your codes again to bind data,for this example:


searchResults.DataSource = from r in response.Results
select new
{
    Title = r[SearchContentProperty.Title],
    Summary = r[SearchContentProperty.HighlightedSummary]
 };

 searchResults.DataBind();
}
于 2012-10-16T09:39:23.743 回答