ETIDrive is a Document Management System (DMS) built using .NET technologies. It provides a robust solution for managing and organizing documents in a secure and efficient manner. With features like role-based access control, document versioning, and multi-storage support, it is tailored for enterprise-level document handling.
- Document Storage & Organization: Upload, categorize, and manage documents within a structured hierarchy.
- Role-Based Access Control (RBAC): Secure access to documents based on user roles.
- User Management: Admin functionalities to create, manage, and assign roles to users.
- Active Directory Integration: Supports Active Directory (AD) for user authentication and role management in enterprise environments.
- Backend: ASP.NET Core, C#
- Frontend: HTML, CSS, JavaScript
- Database: SQL Server
- Authentication: Identity Framework, The Lightweight Directory Access Protocol (LDAP)
- Testing: xUnit Framework
Figure 1: The login page allows users to securely enter their credentials.
Figure 2: Displays the user's main folders, enabling navigation and file management.
Figure 3: Shows how users can create subfolders and navigate using the breadcrumb bar.
Figure 4: Custom context menu that appears on right-click, providing options to create new folders.
Figure 5: New folder creation screen where users can specify the folder name and its location.
- .NET 8 SDK
- SQL Server or compatible database
- Visual Studio or Visual Studio Code
-
Clone the Repository:
git clone https://github.com/unsulliedd/.NET-ETIDrive.git
-
Build the Solution: Open the solution file in Visual Studio and build the project to restore dependencies.
-
Database Setup: Update the appsettings.json file with your SQL Server connection string and create the initial database schema using Entity Framework migrations:
dotnet ef database update
-
Run the Application: Start the project from Visual Studio or using the .NET CLI:
dotnet run
-
Access the Web UI: Navigate to http://localhost in your browser to access the document management interface.
- ETIDrive_Data: Handles database context and Entity Framework operations.
- ETIDrive_Entity: Defines the core data models and entities.
- ETIDrive_WebUI: The main web user interface for document management.
- ETIDrive_xUnitTest: Unit testing for various components.