FSharp.Core程序集的MissingManifestResourceException

时间:2014-11-04 22:48:31

标签: f# windows-phone-8.1 portable-class-library

我在Windows Phone 8.1(通用)项目中使用F#PCL库。

我已将F#PCL库引用为项目。我还引用了FSharp.Core程序集,因为我需要使用它的一些类型(为了与我的F#PCL通信)。我使用对创建新F#PCL项目时默认使用的相同物理程序集(C:\ Program Files(x86)\ Reference Assemblies \ Microsoft \ FSharp.NETCore \ 3.259.3.1 \ FSharp.Core.dll)的引用

只要我构建除Release - ARM之外的任何其他配置,一切正常。但是,当我切换到Release - ARM配置(我认为是商店向用户提供的配置时,根据应用程序直接从商店下载时的行为),一切都会崩溃。

当我尝试访问List.sortBy函数时,出现以下错误:

  

错误代码:

     

-2146233036

     

错误讯息:

     

'FastGenericComparerTable`1'的类型初始化程序抛出了一个   异常。

     

行号:

     

FSharp.Core

     

Stack Trace:at   Microsoft.FSharp.Core.LanguagePrimitives.FastGenericComparerCanBeNullT   在   Microsoft.FSharp.Primitives.Basics.Array.stableSortWithKeys [T,TKEY的](T []   数组,TKey []键)   Microsoft.FSharp.Primitives.Basics.Array.stableSortInPlaceBy [T,TKEY的](FSharpFunc 2 projection, T[] array) at Microsoft.FSharp.Collections.ListModule.SortBy[T,TKey](FSharpFunc 2   投影,FSharpList 1 list) at TaskCrunch.Data.ChildEntityTransforms.reorderTree[a](FSharpFunc 2   sortFunc,FSharpList 1 xs) at TaskCrunch.Data.ChildEntityTransforms.children(toDo x, FSharpList 1   是,FSharpList 1 accumulated) at TaskCrunch.Data.ChildEntityTransforms.createTreeInternal@82(FSharpList 1   ys,FSharpList 1 resultSoFar) at TaskCrunch.Universal.ViewModel.ProjectDetailViewModel.<SortTasks>d__5c.MoveNext() ----- INNER EXCEPTION ------ Message: The type initializer for '<StartupCode$FSharp-Core>.$Prim-types' threw an exception. Source: FSharp.Core StackTrace: at Microsoft.FSharp.Core.LanguagePrimitives..cctor$cont@2181-2[T](Type matchValue, Unit unitVar) at Microsoft.FSharp.Core.LanguagePrimitives.FastGenericComparerTable 1..cctor()   HResult:-2146233036 HelpLink:未知

     

----- INNER EXCEPTION ------消息:抛出了类型'System.Resources.MissingManifestResourceException'的异常。   来源:mscorlib StackTrace:at   System.Resources.ResourceManager.GetString(String name,CultureInfo   文化)at。$ Prim-types..cctor()   HResult:-2146233038 HelpLink:未知

奇怪的是,这似乎不是我第一次调用FSharp.Core,因为我之前调用了一个List.map函数,它似乎在执行。

我怀疑构建过程中出现了问题,但我不确定在哪里查看。我尝试从头开始重新创建F#PCL库无济于事。

1 个答案:

答案 0 :(得分:0)

这可能是VS F#便携式配置文件支持中的错误。可能是一个编译器错误(不知何故,这个版本的FSharp.Core没有正确地安装到可移植的配置文件中),或者可能是一个项目系统错误(某些必需的构建输出没有为ARM正确创建)。

我建议在https://visualfsharp.codeplex.com/

打开这个错误