值或构造函数 'XmlDocument' 未定义

The value or constructor 'XmlDocument' is not defined

当我尝试在 f# 中实例化 xmldocument 对象时,为什么会收到错误消息?

open System.Xml
let doc = XmlDocument()

错误信息是:

ip.fsx(5,11): error FS0039: The value or constructor 'XmlDocument' is not defined

在执行此代码之前,我会

> #r "System.Xml";;
--> Referenced 'C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5.1\System.Xml.dll'

我做错了什么?

尝试:

  let doc = new XmlDocument()

这里,new 是一个 shorthand 用于调用与构造给定类型的值的 XmlDocument 类型关联的函数 - 这些函数称为 构造函数。并非所有 F# 和 .NET 类型都使用构造函数。 (摘自 Don Syme 的书第 21 页。)

这就是为什么有时会混淆 new 关键字的位置。

有关在何处使用新关键字的说明: