2011年2月10日

Windows AzureでF#クラスライブラリを使う

Windows AzureのWebRoleからF#で書かれたクラスライブラリを使ってみた。

WebRoleプロジェクトの参照にF#クラスライブラリを追加してとりあえず使えましたが、Azureにデプロイして実行すると下記例外が発生しました

System.IO.FileNotFoundException: Could not load file or assembly 'FSharp.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.\u000d\u000aFile name: 'FSharp.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'\u000d\u000a   at

どうもAuzre上ではF#のランタイムがないらしい。解決策として

  • WebRoleプロジェクトの参照にFSharp.Coreを追加

image

  • FSharp.Core参照のローカルコピープロパティをTrueに設定

image

これでデプロイすれば問題なく動作しました

ちなみにFSharp.Coreでは2.0と4.0二つのバージョンがあります。参照を追加する際適切なバージョンを選ぶ必要があります。自分は間違って2.0を選んだから、結構はまりました。

image

0 件のコメント:

コメントを投稿