我正在尝试部署在Windows Server 2008上使用F#4.0的Web应用程序 .
它适用于安装了VS2010但在服务器上无法运行的计算机 . 每次打开页面时都会收到以下错误消息:
无法加载文件或程序集'FSharp.Core,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其依赖项之一 . 该系统找不到指定的文件 .
我使用Web平台安装程序安装了.NET 4 . F#PowerPack也已安装 .
我找到了这个页面:http://connect.microsoft.com/VisualStudio/feedback/details/507202/error-in-working-with-f它建议你重新安装F#,但是下载F#的链接似乎被打破了 . 它可能不是我遇到的同样问题 .
我也尝试安装Microsoft F#2.0.0.0,因为它是我能找到的唯一F#重新分发 . 但它根本没有帮助 .
有没有人得到这样的工作?
7 回答
在我的情况下,这是由配置损坏引起的 . 我在
*.fsproj
和*.csproj
文件中删除了对F#的每个引用(包括绑定重定向),从NuGet重新安装了FSharp.Core
包,一切都很顺利 .您需要在部署计算机上安装redist(F#运行时) . 参见例如
http://msdn.microsoft.com/library/ee241127(VS.100).aspx(或http://msdn.microsoft.com/en-us/library/ee829875.aspx)
有关如何将VS项目链安装到安装程序的信息 . 如你所见,redist(位于这里:
http://www.microsoft.com/downloads/details.aspx?FamilyID=5f0a79f8-925f-4297-9ae2-86e2fdcff33c&displaylang=en
)需要安装; FSharp.Core不是.NET的一部分,而是一个单独安装的组件 .
我需要FSharp.Core的4.0.0版本,所以我通过Nuget将它安装在我的Visual Studio 2010中:
http://nuget.org/packages/FSharp.Core
或者在程序包管理器控制台中运行以下命令:
PM>安装包FSharp.Core
然后发布项目并上传FSharp.Core.dll
我有同样的问题,并通过以下方式得到它:
在Web项目中添加对 FSharp.Core 的引用(我的是一个C#项目)
在FSharp.Core引用属性中将 Copy Local 更改为 True
Build 并发布!
只需在服务器上安装:Microsoft Visual Studio 2010 F#Runtime 2.0
http://www.microsoft.com/en-us/download/details.aspx?id=13450
我设法通过从VS2010安装程序安装FSharpRedist2.0来实现它 . 它位于\ WCU \ FSharp .
加入
到
*.csproj
文件帮我解决了同样的问题 . https://msdn.microsoft.com/en-us/library/2fc472t2%28v=vs.110%29.aspx