Tickspec を使用して F# でアプリケーションの AT を記述しました。を使用FSharp.Data.Http.Request
していますが、次のエラーが発生します。
System.MissingMethodException : Method not found: 'FSharp.Data.HttpResponse
FSharp.Data.Http.Request(System.String,
Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Collections.FSharpList`1
<System.Tuple`2<System.String,System.String>>>,
Microsoft.FSharp.Core.FSharpOption`1<System.Collections.Generic.IEnumerable`1
<System.Tuple`2<System.String,System.String>>>,
Microsoft.FSharp.Core.FSharpOption`1<System.String>,
Microsoft.FSharp.Core.FSharpOption`1<FSharp.Data.HttpRequestBody>,
Microsoft.FSharp.Core.FSharpOption`1<System.Collections.Generic.IEnumerable`
1<System.Tuple`2<System.String,System.String>>>,
Microsoft.FSharp.Core.FSharpOption`1<System.Net.CookieContainer>,
Microsoft.FSharp.Core.FSharpOption`1<Boolean>,
Microsoft.FSharp.Core.FSharpOption`1<System.String>,
Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2
<System.Net.HttpWebRequest,System.Net.HttpWebRequest>>)'.
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[]
arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj,
Object[] parameters, Object[] arguments)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags
invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at <StartupCode$TickSpec>.$TickSpec.createAction@212-1.Invoke()
FSharp.Data
バージョンは 2.1.1.0 です。
でfsproj
:
ToolsVersion is 14.0
TargetFrameworkVersion is v4.6.1
F# is 4.0.
別のアプリケーション用に別の AT のセットがFSharp.Data.dll
あり、同じHttp.Request
方法を使用していますが、それらは使用F# 4.0
しており、問題は発生しませんでした。
サンプルアプリで使用したところ、その Http.Request メソッドを使用できたので、dll に問題はないと思います。古いバージョンのFSharp.Coreを使用していて、FSharp.Dataでも同じ問題が発生している可能性があると考えたため、まったく新しいソリューションを作成しました。
F#3.0
私が見つけた唯一の解決策は、その特定のプロジェクトに戻ることでした。他のすべてのアプリケーションF#3.0
に移行したので、使用したくありません。F#4.0
これを解決する方法はありますか?