当前位置:编程学习 > C#/ASP.NET >>

对象强制转换

ObservableCollection<MyChartsService.HeatPump> datas = e.Result;
var v = datas.ToList().Where(d => d.dphour == "1");
MyChartsService.HeatPump heatpump = (MyChartsService.HeatPump)v;
实例化对象时提示:
    无法将类型为“WhereListIterator`1[MyCharts.MyChartsService.HeatPump]”的对象强制转换为类型“MyCharts.MyChartsService.HeatPump”。

问题一:分明是一个“MyCharts.MyChartsService.HeatPump”,为什么提示不能进行转化?截图如下:


问题二:“var v = datas.ToList().Where(d => d.dphour == "1")”中,var不为空,怎样获取它的值?不是要将其转化为实例化对象么? --------------------编程问答-------------------- var v返回的是一个集合取出第一个就行了.First() --------------------编程问答--------------------
引用 1 楼 tian1989 的回复:
var v返回的是一个集合取出第一个就行了.First()


First(),这些方法应该在MSDN上查“List<>”类么? --------------------编程问答-------------------- --------------------编程问答-------------------- 是IList吧 --------------------编程问答--------------------
引用 4 楼 tangxu12 的回复:
是IList吧


补个。。。 --------------------编程问答-------------------- WCF客户端代理类和到Silverlight客户端类的转化消耗资源么??? --------------------编程问答-------------------- 使用“RIA WCF Service”时,连接字符串应该怎样配置???

有实例参考么??? --------------------编程问答--------------------
引用 1 楼  的回复:
var v返回的是一个集合取出第一个就行了.First()

+1 --------------------编程问答-------------------- firstOrDefault()
--------------------编程问答-------------------- firstOrDefault()比First()好 --------------------编程问答-------------------- datas.ToList().Where(d => d.dphour == "1");
返回的对象的类型是:IEnumerable<MyChartsService.HeatPump>,不是MyChartsService.HeatPump,所以不能直接转换,解决的方法就按楼上说的
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,