2013-08-27 4 views
6
Task03Entities.Entites entities = new Task03Entities.Entites(); 

// Creat a object for my entites class 
Task03BAL.BAL bal = new Task03BAL.BAL(); 

// creat a object of BAL to call Get Data Method 
List<Task03Entities.Entites> entitiesList = new List<Task03Entities.Entites>(); 

// make a list of class Entities 
entitiesList = bal.GetData(entities); 

// store data in list 
ViewState.Add("Products", entitiesList.ToArray()); 

// use view state to store entitieslist 
Task03Entities.Entites[] entitiesArray =(Task03Entities.Entites[])ViewState["Products"]; 
List<Task03Entities.Entites> ViewStateList =new List<Task03Entities.Entites(entitiesArray); 

// so now ViewStateList contain entitieslist data 
// Now the Problem which i am facing is 
if (Request.QueryString["count"] != null) // this is okay 
{ 
    listCount =Convert.ToInt32(Request.QueryString["count"]); 
} 

for (int i = (listCount * 2)-2; i < listCount * 2; i++) 
{ 
    Task03Entities.Entites newViewStateList = new Task03Entities.Entites(); 
    newViewStateList = ViewStateList[i]; 

// view state contain a list of data here on above line m trying to acess single data 
%> 
<table> 
<%     

foreach (Task03Entities.Entites item in newViewStateList) 
// on above line i am getting following error message 

Messaggio di errore del compilatore: CS1579: foreach non può operare su variabili di tipo 'Task03Entities.Entites' perché 'Task03Entities.Entites' fa non contiene una definizione pubblica per 'GetEnumerator'foreach non può operare su variabili di tipo definizione pubblica per 'GetEnumerator'

+0

Che cos'è 'ViewStateList'? –

+0

è una lista che contiene ViewState Data ... in realtà prima prelevo tutti i dati dal database e poi li memorizzo in una viewstate copia i dati viewstate in ViewStateList –

risposta

11

E 'semplice: Task03Entities.Entites non è una collezione.

si inizializza un oggetto qui:

Task03Entities.Entites newViewStateList = new Task03Entities.Entites(); 

e quindi tentare di scorrere su di esso, come se si trattasse di una collezione:

foreach (Task03Entities.Entites item in newViewStateList) 
{ 

} 

Ho il sospetto che si desidera qualcosa di simile:

List<Task03Entities.Entites> newViewStateList = new List<Task03Entities.Entites>(); 

foreach (Task03Entities.Entites item in newViewStateList) 
{ 
    //code... 
} 
+0

In realtà voglio ottenere elementi specifici da ViewStateList e quindi memorizzarli newViewstateList. Ad esempio ci sono 6 elementi in ViewStateList e voglio ottenere un singolo elemento uno per uno per ciclo e quindi visualizzare ogni elemento attraverso foreachloop perché ogni elemento contiene molti campi come ID FirstName LastName ect ... –

+0

Irrilevante - 'newViewStateList' non è una raccolta ** non puoi iterare su di essa ** - questa è la causa del tuo errore. – DGibbs

0

aggiungi solo @model IEnumerable int gli abeti t line invece della normale linea @model