Я создал веб-сайт, который берет фрагменты кода, компилирует их и запускает. Тем не менее, F # не работает на сервере. Всякий раз, когда я пытаюсь скомпилировать код F #, я получаю следующее сообщение об ошибке:
Указанная базовая библиотека CLI или библиотека по умолчанию «mscorlib» несовместима в двоичном формате с базовой библиотекой F # «C: \ Program Files (x86) \ Microsoft F # \ v4.0 \ FSharp.Core.dll». Попробуйте перекомпилировать библиотеку или сделать явную ссылку на версию этой библиотеки, которая соответствует используемой вами версии CLI.
Ошибка открытия двоичного файла 'C: \ Program Files (x86) \ Microsoft F # \ v4.0 \ FSharp.Core.dll': исключение типа 'Microsoft.FSharp.Compiler.ErrorLogger + ReportedError'.
Для ясности, это ошибка, возвращаемая компилятором, а не ошибка, возникающая при запуске кода.
Сайт отлично работает на моей машине для разработки и отлично работает на виртуальной машине, которую я развернул, чтобы помочь диагностировать проблему.
Единственное обращение Google к сообщению об ошибке заставило меня попробовать очистить установку F # / .NET безрезультатно. Я сделал ремонтную установку фреймворка и удалил / переустановил используемые мной пакеты F #.
Пример: http://dotnetpad.net/ViewPaste/ZvXBgizf70q83Fk6VmboHw
F # код компиляции: http://bitbucket.org/gobiner/.net-pad/src/tip/DotNetPad/Compilers/FSharpCompiler.cs