asp.net mvc中使用LINQ TO SQL查询数据集使用foreach时发现的问题:CS1579
时间:2010-08-17 来源:祈祷
今天在研究MVC 2.0时自己写了一个demo,demo中采用的是linq to sql作为数据访问的方式,目的只想将某一个表中的数据查出来显示在页面上,自认为很简单的东西,结果却卡在了这样一个问题上: 编译错误 说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。 编译器错误消息: CS1579: “object”不包含“GetEnumerator”的公共定义,因此 foreach 语句不能作用于“object”类型的变量 这个问题困惑了我很久,上google找答案.结果出来的全是英文网站.好在自己英语水平还过得去.终于在翻看了十几个网站后找到解决方案,顿时欣喜不已,遂将解决办法写出来,以方便遇到相同问题的朋友! 先看我的代码:
Controller类
代码
Views文件
代码
首先可以确认的是代码没有语法错误 值得注意的地方是Inherits="System.Web.Mvc.ViewPage"这句,它由系统自动生成,但因为它会在对集合进行foreach循环时会出我上面所说的问题 解决办法:将该句改为:Inherits="System.Web.Mvc.ViewPage<[你的数据映射所在命名空间].[实体类名/表名]>>" 此方法已通过测试!虽然能够理解这么写的意图,但这种语法着实让人感到新鲜!欢迎高手提供更好的解决办法!
相关阅读 更多 +