F# を使用して Windows ストア アプリで使用するポータブル ライブラリを作成しようとしています。1 つのクラスで 1 つの fs ファイルを作成しました。
module FunctionalRT
open System.Net
open System.IO
type WebHelper =
static member DownloadStringAsync (url:string) = async {
let req = HttpWebRequest.Create(url)
use! resp = req.AsyncGetResponse()
use stream = resp.GetResponseStream()
let reader = new StreamReader(stream)
let s = reader.ReadToEnd()
return s
}
Windows ストア アプリでこのライブラリを問題なく参照しました。しかし、問題は、FunctionalRT
モジュールにもWebHelper
クラスにもアクセスできないことです。を書いusing FunctionalRT
たり使おうとするFunctionalRT.WebHelper.FunctionalRT
と、コンパイラはそれを知らないと不平を言います。何が問題なのですか?
編集: いくつかのビルドとクリーンアップの後、私は得る
The type 'Microsoft.FSharp.Control.FSharpAsync`1<T0>' is defined in an assembly that is not referenced. You must add a reference to assembly 'FSharp.Core, Version=2.3.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. C:\Users\Igor\Documents\Visual Studio 2012\Projects\App3\App3\GroupedItemsPage.xaml.cs 46 13 App3
編集:
C:\Program Files (x86)\MSBuild\..\Reference Assemblies\Microsoft\FSharp\3.0\Runtime\.NETPortable\FSharp.Core.dll
上記のエラーメッセージを解決するための参照を追加しますが、別のものがあります
Cannot await 'Microsoft.FSharp.Control.FSharpAsync<string>'