F# 在 PCL 项目中使用 XMLProvider

F# Using XMLProvider in PCL Project

我针对 4.5.1 创建了一个新的 VS2015 F# PCL 项目。我添加了 FSharp.Data 并获得了 XML 类型的提供程序来下拉数据:

    #r "..\packages\FSharp.Data.2.2.5\lib\portable-net40+sl5+wp8+win8\FSharp.Data.dll"

open System.IO
open FSharp.Data

let baseDirectory = __SOURCE_DIRECTORY__
let baseDirectory' = Directory.GetParent(baseDirectory)

type Campaign = XmlProvider<"../Data/Campaign.xml">
let filePath = "Data\Campaign.xml"
let fullPath = Path.Combine(baseDirectory'.FullName, filePath)
let campaignText = File.ReadAllText(fullPath)
let campaigns = Campaign.Parse(campaignText)

当我尝试在结果上打点时,它告诉我需要添加对 System.Xml.Linq 的引用。但是,我无法将该库添加到 PCL 项目中。有什么方法可以解析数据吗?

只需在脚本文件中添加对 System.Xml.Linq 的引用,如下所示:

#r "packages\FSharp.Data.2.2.5\lib\portable-net40+sl5+wp8+win8\FSharp.Data.dll"
#r "System.Xml.Linq"