我一直在使用带有内联XML的XmlDataProvider。这是我的代码:
<XmlDataProvider x:Key="InternalData" XPath="/Workspace">
<x:XData>
<Workspace xmlns="" Name="Workspace">
<Project Name="Project 1" />
<Project Name="Project 2" />
<Project Name="Project 3" />
</Workspace>
</x:XData>
</XmlDataProvider>
这与我使用内联XML看到的大多数示例非常相似,但我不断收到错误“ XmlDataProvider具有未显式设置其XmlNamespace(xmlns =“”)”的内联XML。我知道这很明显,但是为什么我会收到这个错误?应该有效,不是吗?而且似乎没有人遇到这个问题,无论如何我都没有搜索过Google。
提前致谢
更新:为进一步说明,此错误仅显示在我的“输出”窗口中。这不是编译器错误,也不会阻止我运行程序。我可以很好地阅读XML并将其显示在TreeView中。我只想了解为什么我首先遇到错误。
最佳答案
值得一提的是,有时我在完全相同的MSDN文章上遇到了完全相同的错误(有关我的理解,请参见http://blog.wouldbetheologian.com/2009/07/why-wpf-databinding-is-awful-technology.html)。但是为什么要这样做:我完全迷惑了。似乎不应该如此,因为使用xmlns =“”并将其省略会产生相同的效果。我的猜测是,这是Microsoft XAML解析引擎(当然并不完全符合XML)的怪异产物。可能此工件是有意的(一个功能),而可能不是(一个错误)。