DynamicFormBuilder.Domain
1.0.0
dotnet add package DynamicFormBuilder.Domain --version 1.0.0
NuGet\Install-Package DynamicFormBuilder.Domain -Version 1.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DynamicFormBuilder.Domain" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="DynamicFormBuilder.Domain" Version="1.0.0" />
<PackageReference Include="DynamicFormBuilder.Domain" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add DynamicFormBuilder.Domain --version 1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: DynamicFormBuilder.Domain, 1.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package DynamicFormBuilder.Domain@1.0.0
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=DynamicFormBuilder.Domain&version=1.0.0
#tool nuget:?package=DynamicFormBuilder.Domain&version=1.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Dynamic Form Builder Package
A flexible and powerful .NET 9 package for building dynamic forms with rich validation and customization options.
Features
- Create and manage dynamic forms with various question types
- Support for multiple question types:
- Text (single-line and multi-line)
- DateTime (with optional time component)
- Single Choice (dropdown or radio buttons)
- Multiple Choice (checkboxes)
- Built-in validation framework
- Form submissions storage and retrieval
- Clean Architecture design
- Full UI components for form design and rendering
- API-first approach with Swagger documentation
Architecture
The solution follows Clean Architecture principles with the following projects:
- DynamicFormBuilder.Domain: Core entities and business rules
- DynamicFormBuilder.Application: Use cases, interfaces, and application logic
- DynamicFormBuilder.Infrastructure: Data persistence and external integrations
- DynamicFormBuilder.UI: Razor components for form rendering
- DynamicFormBuilder.Api: RESTful API endpoints
Prerequisites
- .NET 9.0 SDK
- SQL Server (can be run using Docker)
- Visual Studio 2022+ or Visual Studio Code
Installation
- Clone the repository:
git clone https://github.com/yourusername/form-builder-package.git
cd form-builder-package
- Restore dependencies:
dotnet restore
- Update database connection string in
appsettings.json
:
{
"ConnectionStrings": {
"DefaultConnection": "Server=localhost;Database=FormBuilder;Trusted_Connection=True;MultipleActiveResultSets=true"
}
}
- Apply database migrations:
cd DynamicFormBuilder.Api
dotnet ef database update
Usage
API Integration
- Add package references to your project:
<PackageReference Include="DynamicFormBuilder.Core" Version="1.0.0" />
<PackageReference Include="DynamicFormBuilder.EntityFrameworkCore" Version="1.0.0" />
- Register services in your
Program.cs
:
services.AddDynamicFormBuilder(options => {
options.UseConnectionString("DefaultConnection");
options.UsePermissions(PermissionScheme.Simple);
});
UI Integration
- Add the UI package:
<PackageReference Include="DynamicFormBuilder.UI" Version="1.0.0" />
- Use the components in your Razor pages:
<DynamicFormDesigner FormId="@formId" />
<DynamicFormRenderer FormId="@formId" />
API Documentation
The API is documented using Swagger/OpenAPI. When running in development mode, access the Swagger UI at:
https://localhost:5001/swagger
Testing
The solution includes comprehensive tests:
dotnet test
Includes:
- Unit tests for domain logic
- Integration tests for repositories
- End-to-end API tests
- UI component tests
Contributing
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net9.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
1.0.0 | 147 | 5/6/2025 |