Как создать надстройку Visual Studio на F #? - PullRequest
4 голосов
/ 03 августа 2010

Даже с установленным F # Visual Studio 2008 (и, вероятно, 2010) предоставляет только шаблоны проектов надстроек для C #, VB.NET и C ++.

Итак, как создать надстройку на основе F #?

Я пытался создать проект библиотеки классов F # с новым классом, реализующим IDTExtensibility2, установив правильные ссылки (EnvDTE, Extensibility, ...), скопировав несколько атрибутов проекта из надстройки C # (главным образомкомандной строки для отладки) и создания файла манифеста .AddIn вручную, но безуспешно.Когда VS запускается, моя надстройка не отображается в списке доступных.

Какие шаги отсутствуют?Какая-то регистрация COM где-то?

Ответы [ 2 ]

1 голос
/ 04 августа 2010

Я наконец нашел, что пошло не так: я просто забыл поместить файл .AddIn в каталог AddIn (мастер C # делает это автоматически).

Итак, чтобы создать надстройку на основе F # дляVisual Studio:

  • Создание нового проекта библиотеки классов F #
  • Добавление нескольких ссылочных сборок в проект (в основном EnvDTE, EnvDTE80, EnvDTE90, Extensibility)
  • Создатьновый класс, реализующий IDTExtensibility2
  • Скопируйте свойства отладки проекта надстройки на C # в проект F #
  • Скопируйте файл манифеста .AddIn и измените его в соответствии с вашим проектом F # *.и не забудьте скопировать этот новый файл в каталог AddIn для сеанса пользователя
  • наслаждайтесь!
1 голос
/ 04 августа 2010

Я не пробовал этот точный сценарий, но общая стратегия, с которой мне больше всего повезло: начать с шаблона C #, переименовать .csproj в .fsproj, изменить <Import> s для F # и заменить <Compile> кода C # с кодом F # и перейдите оттуда.

Шаблоны часто содержат различную важную логику для сборки / развертывания, поэтому начните с рабочего шаблона для C # и настройте его для F #.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...