Основные библиотеки, обязательные для создания плагинов в ModPlus, выпущены в виде nuget-пакетов.
- ModPlusAPI.dll – основная библиотека вспомогательных методов ModPlus. Nuget
- ModPlusStyle.dll – библиотека оформления. Nuget
Вы также можете подключить эти библиотеки из папки /ModPlus/Extensions.
Библиотеки продуктов Autodesk:
Мы создали nuget-пакеты с минимальным обязательным набором библиотек Autodesk, необходимых для написания плагинов ModPlus:
- ModPlus.AutoCAD.API: 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021
- ModPlus.Revit.API: 2017, 2018, 2019, 2020, 2021
При установке пакета выбирайте версию, соответствующую версии продукта Autodesk.
Библиотеки сторонних разработчиков:
- EPPlus.dll – работа с файлами excel
- GongSolutions.Wpf.DragDrop.dll – реализация drag-and-drop
- NCalc.dll - вычислитель математических выражений
- Microsoft.Xaml.Behaviors.dll – API поведения для Windows
Перечисленные библиотеки рекомендуется подключать из папки /ModPlus/Extensions.
Следующие библиотеки подключаются вместе с пакетом ModPlusAPI:
- ModPlus.Newtonsoft.Json.dll – fork с библиотеки Newtonsoft.Json версии 11.0.1.0 (под лицензией MIT)
- ModPlus.SimpleInjector.dll – fork с библиотеки SimpleInjector версии 5.0.3 (под лицензией MIT)
При необходимости использования библиотек, отсутствующих в списке, следует предварительно сообщить автору ModPlus.
Для всех библиотек, перечисленных в данной статье, обязательно нужно установить свойство Copy Local = false!
Чтобы установить значение Copy Local = false при переводе nuget-пакетов в формат PackageReference нужно открыть файл проект (.csproj) в текстовом редакторе и для ссылок на пакеты добавить свойство <ExcludeAssets>runtime</ExcludeAssets>.
Например:
<PackageReference Include="ModPlus.AutoCAD.API.2020">
<Version>1.0.0</Version>
<ExcludeAssets>runtime</ExcludeAssets>
</PackageReference>
<PackageReference Include="ModPlus.AutoCAD.Module.2020">
<Version>4.2.9.1</Version>
<ExcludeAssets>runtime</ExcludeAssets>
</PackageReference>
<PackageReference Include="ModPlus.ProductDatabase">
<Version>2.2.0.11</Version>
<ExcludeAssets>runtime</ExcludeAssets>
</PackageReference>
<PackageReference Include="ModPlusAPI">
<Version>1.3.0</Version>
<ExcludeAssets>runtime</ExcludeAssets>
</PackageReference>
После добавления этого свойства рекомендуется удалить папку obj в корне проекта и пересобрать решение