在C#程序中添加了引用System.Data。然后有如下定义
private DataRow[] myRow = null;
myRow.Where(xxxx);//////////就在这里
会提示“System.Data.DataRow[]”不包含“Where”的定义,并且找不到可接受类型为“System.Data.DataRow[]”的第一个参数的扩展方法“Where”(是否缺少 using 指令或程序集引用?)。
再新建一个项目,定义同样的变量这样引用就没有问题,例子也没问题,就是自己改的有问题。
经过数小时研究对比终于有所发现:例子用的是.net 2.0框架、新建那个是4.0框架、自己改的那个改成了4.0框架。
新建.net 4.0框架项目引用中会有一个:using System.Linq;,而2.0里没有。而自己把2.0改成4.0后,项目中也没有自动加上这个引用。
于是试着加上这一条引用,结果编译成功了。看来确实是这一句的问题。
.net真麻烦。提示这么莫名藏娇。