【发布时间】:2019-05-13 07:16:03
【问题描述】:
我正在使用 F# 对 XML 文件进行分析。 由于代码量越来越大,我决定将我的代码分成不同的文件。
所以我创建了一个看起来像这样的新文件:
module Analyis
open FSharp.Data
open System
type someXml = XmlProvider<"someXMLFile.xml">
// Some Analysis functions down here
当我现在尝试从另一个文件中使用我的类型时,无法再找到应该由 typeprovider 生成的子类型:
open Analysis
let importantFunction (data:someXml) =
let thisDoesNotWork = data.someProperty
// more code
只有当我像这样在函数内部加载数据时它才有效:
open Analysis
let importantFunction =
let data = someXml.GetSample()
let nowItWorks = data.someProperty
// more code
问题:
是否有具体原因,为什么这不起作用?
如何有一种“正确”的方式将 XmlType 分离到另一个文件中?
【问题讨论】: