FSharp.Core.sigdata не найден рядом с FSharp.Core
Я пытаюсь использовать F# для приложения ASP.NET MVC. Одно из моих действий контроллера отправляет список F# в представление, поэтому я пишу:
<%@ Page Language="C#" Inherits="ViewPage<FSharpList<int>>" %>
Конечно, чтобы это работало, я должен добавить Microsoft.FSharp.Collections
в элемент namespaces в моем web.config:
<add namespace="Microsoft.FSharp.Collections"/>
и добавить ссылку на FSharp.Core
в элементе сборки:
<add assembly="FSharp.Core, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
Как только я добавляю эту ссылку на сборку, каждое представление (использует ли он тип F# или нет) завершается с этой ошибкой:
ошибка FS1221: FSharp.Core.sigdata не найден вместе с FSharp.Core
Я могу обойти это, не имея в своих представлениях каких-либо специфических для F# типов, но в чем причина этой ошибки? Кроме того, где FSharp.Core.sigdata
? Его нет в моем GAC, и я нигде не могу его найти.
1 ответ
Вы найдете это в ссылочных сборках, так как sigdata и optdata - это вещи времени разработки (но я полагаю, что они нужны и CodeDom?), Например:
C:\Program Files\Reference Assemblies\Microsoft\FSharp\2.0\Runtime\v2.0\FSharp.Core.dll
C:\Program Files\Reference Assemblies\Microsoft\FSharp\2.0\Runtime\v2.0\FSharp.Core.optdata
C:\Program Files\Reference Assemblies\Microsoft\FSharp\2.0\Runtime\v2.0\FSharp.Core.sigdata
Если вы скопируете их рядом с FSharp.Core, которое использует приложение, оно, вероятно, будет работать.