【问题标题】:Does Linq-to-Xml queries support intellisence in C#?Linq-to-Xml 查询是否支持 C# 中的智能感知?
【发布时间】:2011-12-19 10:57:54
【问题描述】:

在我的项目中,我使用 XML 文件进行数据存储。我正在使用 linq-to-xml 查询访问该文件。实际上,我已经从我的 SQL 服务器数据库创建了那个 XML 文件,但是由于 SQL 中的表包含超过 50 列,因此生成的 XML 文件也有超过 50 个元素......

现在,在应用查询时,我最初将 XML 文件加载到 XDocument 对象中,然后对其应用查询。

我的主要问题是它包含超过 50 个元素,如果没有智能支持,很难编写查询。为什么它不支持智能?我做错了什么?我该怎么做才能获得智能支持?

【问题讨论】:

标签: c# linq-to-xml


【解决方案1】:

LINQ to XML 基于字符串,并不局限于遵循某种架构的文档。这就是你没有得到 IntelliSense 的原因,VS 没有关于架构的信息。

如果这对你来说真的很重要,也许使用 xsd.exe 之类的东西来生成代表架构的类对你来说会更好。

【讨论】:

    【解决方案2】:

    无法获得 Linq to Xml 的智能感知。 这是因为您在运行时加载文件,并且您希望它具有编译时智能感知。如果你在运行时加载一个不同的文件,你会得到一个编译时错误吗?

    您可以做的是从您的 XML 文件生成类,然后将您的 XML 文件反序列化为这些类。您可以使用 Linq To Objects 来访问数据。

    Here is some documentation 用于创建您的课程。

    【讨论】:

      猜你喜欢
      • 2015-12-17
      • 1970-01-01
      • 1970-01-01
      • 2010-09-10
      • 1970-01-01
      • 2012-02-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多