unity empty c# list gridview isnullorempty

empty - list.any c#



Verifique si la lista está vacía en C# (8)

Tengo una lista de objetos poblados de una base de datos. Necesito mostrar un mensaje de error si la lista está vacía y mostrar una vista de cuadrícula en caso contrario.

¿Cómo puedo verificar si una List<T> está vacía en C #?


¿Qué pasa con el uso del método Count ()?

if(listOfObjects.Count() != 0) { ShowGrid(); HideError(); } else { HideGrid(); ShowError(); }


Deberías usar una instrucción IF simple

List<String> data = GetData(); if (data.Count == 0) throw new Exception("Data Empty!"); PopulateGrid(); ShowGrid();


Por qué no...

bool isEmpty = !list.Any(); if(isEmpty) { // error message } else { // show grid }

El GridView también tiene una EmptyDataTemplate que se muestra si el origen de datos está vacío. Este es un enfoque en ASP.NET:

<emptydatarowstyle backcolor="LightBlue" forecolor="Red"/> <emptydatatemplate> <asp:image id="NoDataErrorImg" imageurl="~/images/NoDataError.jpg" runat="server"/> No Data Found! </emptydatatemplate>


Si está utilizando una vista de cuadrícula, utilice la plantilla de datos vacía: EmptyDataTemplate

<asp:gridview id="CustomersGridView" datasourceid="CustomersSqlDataSource" autogeneratecolumns="true" runat="server"> <emptydatarowstyle backcolor="LightBlue" forecolor="Red"/> <emptydatatemplate> <asp:image id="NoDataImage" imageurl="~/images/Image.jpg" alternatetext="No Image" runat="server"/> No Data Found. </emptydatatemplate> </asp:gridview>


Si la implementación de la lista que está utilizando es IEnumerable<T> y Linq es una opción, puede usar Any :

if (!list.Any()) { }

De lo contrario, generalmente tiene una propiedad Length o Count en matrices y tipos de colección, respectivamente.


gridview tiene un método que verifica si el origen de datos al que lo está vinculando está vacío, le permite mostrar algo más.


If (list.Count==0){ //you can show your error messages here } else { //here comes your datagridview databind }

Puede hacer que su cuadrícula de datos sea visible y hacerla visible en la sección else.


var dataSource = lst!=null && lst.Any() ? lst : null; // bind dataSource to gird source