foreach语句无法对"getenumerator"的公共定义类型的变量进行操作 [英] foreach statement cannot operate on variables of type public definition for 'getenumerator'

查看:44
本文介绍了foreach语句无法对"getenumerator"的公共定义类型的变量进行操作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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 

编译器错误消息:CS1579:foreach语句无法在'Task03Entities.Entites'类型的变量,因为'Task03Entities.Entites'不包含以下内容的公共定义'GetEnumerator'

Compiler Error Message: CS1579: foreach statement cannot operate on variables of type 'Task03Entities.Entites' because 'Task03Entities.Entites' does not contain a public definition for 'GetEnumerator'

推荐答案

很简单: Task03Entities.Entites 不是集合.

您在此处初始化对象:

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

然后尝试对其进行迭代,就好像它是一个集合一样:

And then attempt to iterate over it as if it were a collection:

foreach (Task03Entities.Entites item in newViewStateList)
{

}

我怀疑您想要类似的东西

I suspect you want something like:

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

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

这篇关于foreach语句无法对"getenumerator"的公共定义类型的变量进行操作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆