For the complete documentation index, see llms.txt. This page is also available as Markdown.

Deploy Controller Plugins

Build and deploy Discussions Web class library, check controller discovery and request prerequisites.

The API project of Discussions is a Web class library, and the OutputType is Library. It contains the controller but has no independently launchable entry and must be deployed together with Web Host and domain plugins.

Build the Actual Project

First build Core and Web in the sibling framework repository as described in Your First Business Plugin, using the same configuration and target framework. See Prerequisites to prepare the SDK and source directories.

Build the API from the discussions root directory
dotnet build src/api/Zongsoft.Discussions.Web.csproj -f net10.0 -p:ZongsoftFrameworkPathReferenced=true -p:GeneratePackageOnBuild=false

This also builds the domain library. Local references do not build framework automatically. If your NuGet source already provides the required versions of Core and the other dependencies, you can omit the property and use the default package references.

Web Manifest Dependency Domain Plugin

Source: src/api/Zongsoft.Discussions.Web.plugin (excerpt; see source for context).

Zongsoft.Discussions.Web.plugin
<manifest>
	<dependencies>
		<dependency name="Zongsoft.Discussions" />
	</dependencies>

	<assemblies>
		<assembly name="Zongsoft.Discussions.Web" />
	</assemblies>
</manifest>

Dependencies ensure that domain modules are assembled first, and the assembly declaration allows the host to discover the controller. Deploying only Web DLLs without domain mapping, identity extensions, and data drivers will result in controllers existing but business calls failing.

Resources Delivered with the Package

Source: src/api/Zongsoft.Discussions.Web.deploy (excerpt; see source for context).

User archive templates are in templates. The project also enters the docs/http request file into artifacts/http for interface verification; the address and credentials in the request must be provided by its own environment.

Verify Path

First confirm that the Discussions and Discussions.Web lists are loaded, and then confirm that Threads, Forums, Users and other controllers enter the application model. Then check the authentication, site, connection, mapping and external file configuration, and finally verify the query and business action.

Public actions are based on the current routing of the controller. repository The early docs/api.md is a historical interface draft; singular paths therein should not be considered current executable examples without checking. See Requests and Data Service APIs for the specific code of subject review.

Last updated