我有以下vb.net代码:
Dim carsDoc As XDocument = XDocument.Parse(sCarsXML)
Dim query = From ex In carsDoc.Descendants("car")
Select New With {
.id = ex.Element("id").Value,
.code = ex.Element("code").Value
}
For Each ex In query
MsgBox("ID: " & ex.id.ToString & vbCrLf & "CODE: " & ex.code.ToString)
Next
我在第9行(MsgBox代码)上收到以下错误:
BC30451'ex'未申报。由于它可能无法访问 保护水平。
我添加了所需的参考资料:
Imports System.Xml.Linq
Imports System.Linq
我无法弄清楚问题?
答案 0 :(得分:0)
query
中的项目类型不是XElement
,它是由New With
语句创建的匿名类型。
不要在循环中指定变量的类型:
For Each ex In query
答案 1 :(得分:0)
在互联网上搜索了几个小时后,我发现了问题/解决方案:
" 选项推断"在" 编译"项目设置部分已关闭。这是因为我已将项目从 .NET Framework 2.0 转换为 3.5 。