Почему я получаю исключение System.MissingMethodException при вызове пользовательской библиотеки?

У меня есть проект библиотеки с именем MyLib, в котором у меня есть пространство имен с именем Extensions, в котором есть модуль с именем Extension1, в котором есть метод с именем ext1Method1 типа string -> string.

В решении для проекта библиотеки есть исполняемый консольный проект с именем Test. В пределах Test я могу позвонить MyLib.Extensions.Extension1.ext1Method1 str, и это работает нормально.

Я создал совершенно отдельное решение под названием NewSol1 и включил ссылку на MyLib.dll в NewSol1. В NewSol1 есть строка

printfn "%s" (MyLib.Extensions.Extension1.ext1Method1 "Hello, World")

Решение NewSol1 строится без ошибок. Но когда я запускаю исполняемый файл, я получаю следующую ошибку:

System.MissingMethodException was unhandled

Message: An unhandled exception of type 'System.MissingMethodException' occurred in NewSol1.exe

Additional information: Method not found: 'Microsoft.FSharp.Collections.FSharpList`1<System.String> MyLib.Extensions.Extension1.ext1Method1(System.String)'.

Заранее спасибо за вашу помощь.


person Shredderroy    schedule 11.12.2015    source источник
comment
См. stackoverflow.com/q/34134858/636019.   -  person ildjarn    schedule 11.12.2015
comment
@ildjarn Это решило проблему! Если вы опубликуете ссылку в качестве ответа, я приму ее.   -  person Shredderroy    schedule 11.12.2015


Ответы (1)


Я публикую здесь краткий ответ, хотя ссылка, предоставленная ildjarn, отвечает на вопрос: чтобы решить проблему, убедитесь, что пакеты Nuget в двух решениях одинаковы.

В моем случае библиотека использовала немного более старую версию FSharp.Core. Поскольку у меня была возможность перекомпилировать библиотеку для любой версии FSharp.Core, я решил обновить все пакеты Nuget как в библиотеке, так и в потребителе. Я сделал это, щелкнув правой кнопкой мыши решение библиотеки, выбрав Manage Nuget Packages for Solution... и убедившись, что все пакеты обновлены.

person Shredderroy    schedule 11.12.2015