请记住,我是.Net和F#世界的新手.如果我的问题听起来很愚蠢或者我没有使用正确的术语,我会提前道歉.话虽如此,这是我的问题:
我使用visual studio 2010编写了一个简单的F#consol应用程序.在我的计算机上成功执行应用程序后,我将调试目录下的可执行文件移动到不同的计算机并尝试执行它.这导致以下执行
未处理的异常:System.IO.FileNotFoundException:无法加载文件或程序集'FSharp.Core,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其依赖项之一.该系统找不到指定的文件.在.$ Program.main @()
标记机已安装.net 4.我检查了GAC,发现以下"FSharp.Core,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a"
但是应用程序正在寻找FSharp.Core,版本= 4.0.0.0.如果我理解正确,没有这样的F#4.0版本可用,那么为什么我的应用程序正在寻找Version = 4.0.0.0?欢迎任何帮助
谢谢
Sudaly
我需要在F#中编写一个应该将文件推送到FTP服务器的程序.有没有我可以使用的图书馆?我无法在网上找到任何东西.有人能指出我正确的方向吗?如果可能的话,一些示例代码将非常有用
我刚写完第一个F#程序.功能明智的代码以我想要的方式工作,但不确定代码是否有效.如果有人可以为我查看代码并指出可以改进代码的区域,我将不胜感激.
谢谢Sudaly
open System
open System.IO
open System.IO.Pipes
open System.Text
open System.Collections.Generic
open System.Runtime.Serialization
[<DataContract>]
type Quote = {
[<field: DataMember(Name="securityIdentifier") >]
RicCode:string
[<field: DataMember(Name="madeOn") >]
MadeOn:DateTime
[<field: DataMember(Name="closePrice") >]
Price:float
}
let m_cache = new Dictionary<string, Quote>()
let ParseQuoteString (quoteString:string) =
let data = Encoding.Unicode.GetBytes(quoteString)
let stream = new MemoryStream()
stream.Write(data, 0, data.Length);
stream.Position <- 0L
let ser = Json.DataContractJsonSerializer(typeof<Quote array>)
let results:Quote array = ser.ReadObject(stream) :?> Quote array
results
let RefreshCache quoteList =
m_cache.Clear()
quoteList |> Array.iter(fun result->m_cache.Add(result.RicCode, …Run Code Online (Sandbox Code Playgroud)