对数据源 - C# 中的记录进行计数



如果搜索在数据源中没有返回任何记录,我想在屏幕上显示一条消息,只是不确定语法,

例如

if(gridview.datasource.[number of records] = 0)
{
 do a thing
}

或计算数据源后面的 LINQ 查询,

有什么想法吗?

谢谢

可以使用网格视图的行集合。

if(gridview.Rows.Count == 0)
{
 do a thing
}

您需要将数据源强制转换为它绑定到的正确类型。仅使用行并不总是提供数据源中的总数。请看这个例子:

<asp:GridView ID="GridView1" runat="server" 
    AllowPaging="true" PageSize="3">
</asp:GridView>

在代码隐藏中:

var fruit = new List<string>() 
    { "banana", "orange", "apple", "strawberry", "melon", "grape" }
GridView1.DataSource = fruit;
GridView1.DataBind();
int rowsCount = GridView1.Rows.Count; // rowsCount = 3
int dataCount = ((List<string>)GridView1.DataSource).Count; // dataCount = 6

因此,您可以看到仅计算行数仅返回"3",因为启用了分页。这是当前行页的计数。但是,强制转换数据源会提供原始数据源返回的计数。因此,只要您了解差异,您就可以使用其中任何一个。

相关内容

  • 没有找到相关文章

最新更新