繁体   English   中英

XmlProvider FS0039中的DomainTypes未定义

[英]DomainTypes in XmlProvider FS0039 not defined

我正在尝试使用FSharp.Data XmlProvider。 根据示例,您可以访问嵌套类型并创建一个将接收这些类型之一的参数的函数。 https://github.com/fsharp/FSharp.Data/blob/master/samples/library/XmlProvider.fsx(177行)

但是,当我尝试执行以下操作时:

type businessesT = XmlProvider<"Businesses.xml">
type businessT = businessesT.DomainTypes.Business
let testfunc (b:businessesT.DomainTypes.Business) = 
    b

直到我真正进行编译,然后我得到

错误FS0039:未定义类型“业务”

更新:问题可以重现与FSharp.Data(XmlProvider.fsx)中的示例在第205行之后添加类型别名

type Rss = XmlProvider<"http://tomasp.net/blog/rss.aspx">
type test = Rss.DomainTypes.Channel

奇怪的是带有printDiv函数的示例正在运行...

这很可能是由于加载类型提供程序时遇到的一些问题引起的-如果编译器无法加载类型提供程序,则它将无法运行它,因此将无法定义任何提供的类型(如Business

您是在脚本文件中使用#r ,还是通过项目中的“添加引用”引用类型提供程序? 如果您使用#r ,请检查该行上是否有任何错误消息。 如果是项目,请检查编译器输出的其他错误消息。

我已经列出了一些常见原因,导致类型提供程序无法在另一个答案中加载

这可能是与在构建项目时无法识别的“类型提供程序”相同的问题,该问题已在FSharp.Data 1.1.10中修复。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM