SubmissionManager is a modular, multi-client .NET solution designed to provide a flexible and centralized system for collecting, processing, and reviewing individual submissions (such as applications, registrations, or forms), utilizing a secure remote SQL database architecture.
- Centralized API-First Architecture: Utilizes a robust backend service (
SubmissionManager.API) as the single source of truth and secure gateway to the remote SQL database. - Multi-Client Ecosystem: Combines a web interface (
SubmissionManager.Web) for public data intake and a desktop administrative application (SubmissionManager.Admin) for data review and management. - Domain-Agnostic Design: Built with a generic, unified data schema (
SubmissionManager.Data) and shared components (SubmissionManager.Shared) that can be adapted to any form-based intake process without modifying core database structures. - Layered Solution Structure: Strictly organized into presentation, service, and data layers ensuring high maintainability, clear separation of concerns, and clean namespace management.
The solution is cleanly separated into logical projects within the Visual Studio environment:
- A desktop Windows Forms application used by authorized personnel/managers to fetch, view, and process submitted data securely via the API.
- A modern ASP.NET Core Web API project handling database connections, routing, and all data operations through structured controllers.
- The data access layer containing entity definitions, database contexts, and migration configurations for the remote SQL server.
- A shared utility library holding Data Transfer Objects (DTOs), view models, custom attributes, extensions, and common helpers utilized across all client and server projects.
- A lightweight front-end web component (Blazor-based) designed to act as an entry form, collecting user details and transmitting submissions downstream into the database via the API.
- .NET 10.0 (or compatible modern .NET target supporting Windows Forms and ASP.NET Core) with Visual Studio.
- Remote SQL Server instance configured with appropriate connection strings.
- Clone or copy the project repository workspace.
- Open the
SubmissionManager.slnsolution file in Visual Studio. - Configure the database connection strings in the API settings.
- Build the solution via Build
$\rightarrow$ Rebuild Solution.
- Deploy the API: Host or run
SubmissionManager.APIto establish connectivity with the remote SQL server. - Collect Data: Use the web interface (
SubmissionManager.Web) to gather user submissions and securely store them via the API. - Review Submissions: Launch the
SubmissionManager.Admindesktop application to fetch, filter, and review the submitted data in real-time.
- This project is licensed under the CC0-1.0 license (Public Domain).
- To the extent possible under law, the author(s) have dedicated all copyright and related rights to this software to the public domain worldwide.
- Feel free to use, modify, and distribute the code without any restrictions.
For technical inquiries or administrative follow-ups, please contact:
- Name: Željko Perić
- Email: periczeljkosmederevo@yahoo.com