Building Extension package
Extension package
Extension package is a .zip archive with all files necessary to run extensions. More about package structure you can read here.
Creating a extension package
In order to register plugins in WEBCON BPS – Designer Studio, you have to create package which is a zipped directory that contains the project’s DLL file and the manifest. The BPS 2024 Extensions contains the WEBCON BPS SDK Tools that will help you in publishing your plugin package. This process consists of increasing the assembly version, building the startup project, and at the end creating the plugin package which contains all the plugins found in the selected project. The package is published to the “Publish” directory inside your project.
WEBCON BPS SDK Tools
The VSIX installer which you used to extend Visual Studio with WEBCON BPS Extensions also provides the WEBCON BPS SDK Tools. It automates proces of building extensions package. If your solution contains more than one project, you can switch the controls displayed in the tool by right clicking the project and using the command “Set as startup project”. The tool can be found in View > Other Windows as shown below.
When the right project is selected, all you have to do is use the "Publish" button. Ready extensions package will be created in the "Publish" directory inside your project.
Plugins package manifest
The manifest is the JSON file specifying information about plugins contained within the DLL file and all external dependencies. This metadata is then used by plugin registration mechanism to discover the proper code. If you use default settings applied by our project template, the manifest will be filled in automatically every time you add a new plugin. You can check the current state of your manifest and edit it inside the JSON file which name is the same as the project.
{
"extensions": [
{
"guid": "dd297056-8fce-48d4-bf99-83e62db244fc",
"name": "SetFormField",
"description": "",
"assembly": "CustomActionExample",
"class": "CustomActionExample.SetFormField",
"type": "CustomAction"
}
],
"dependencies": [
"CustomActionExample"
],
"version": "24"
}