PROVA, ASP.NET Core MVC kullanılarak geliştirilmiş bir
Proje ve Görev Yönetim Uygulamasıdır.
Bu proje; kullanıcı kimlik doğrulama, rol tabanlı yetkilendirme, proje–görev yönetimi ve dosya (proof) yükleme işlemlerini içermektedir.
Veri erişimi Entity Framework Core (Code-First + Migration) yaklaşımı ile sağlanmıştır.
- ASP.NET Core MVC (.NET 8)
- ASP.NET Core Identity
- Entity Framework Core (Code-First)
- SQL Server
- Repository & Service Pattern
- Bootstrap 5
Admin işlemleri AdminController üzerinden yürütülür ve
[Authorize(Roles = "Admin")] attribute’u ile korunmaktadır.
Admin paneline erişebilmek için:
- Admin rolüne sahip bir kullanıcı ile giriş yapılmalıdır.
- Sistemdeki tüm kullanıcıları görüntüleyebilir
- Kullanıcı rollerini yönetebilir
- Projeleri ve proje üyelerini yönetebilir
- Tüm görevler üzerinde tam yetkiye sahiptir
- Proje oluşturabilir
- Projeye kullanıcı ekleyebilir
- Görev oluşturup kullanıcılara atayabilir
- Assignment dosyası yükleyebilir
- Sadece kendisine atanan görevleri görüntüler
- Görev durumunu güncelleyebilir
- Proof dosyası yükleyebilir
- Görevler altında yorum ekleyebilir
- MVC mimarisi uygulanmıştır
- Repository katmanı kullanılmıştır
(ProjectRepository,TaskRepository) - Service katmanı kullanılmıştır
(ProjectService) - Entity Framework Core ile ORM ve Code-First yaklaşımı benimsenmiştir
- ViewModel yapısı kullanılmıştır
(ProjectCreateViewModel,TaskCreateViewModel,ProjectUsersViewModel)
- Uygulama ilk çalıştırmada veritabanı yoksa
dotnet ef database update
PROVA
│
├── Controllers
│ ├── AdminController.cs
│ ├── ProjectController.cs
│ └── TaskController.cs
│
├── Data
│ ├── ApplicationDbContext.cs
│ ├── SeedData.cs
│ └── Migrations
│
├── Models
│ ├── ApplicationUser.cs
│ ├── Project.cs
│ ├── ProjectUser.cs
│ ├── TaskItem.cs
│ ├── TaskActivity.cs
│ ├── TaskComment.cs
│ ├── TaskAttachment.cs
│ └── TaskStatus.cs
│
├── Repositories
│ ├── ProjectRepository.cs
│ └── TaskRepository.cs
│
├── Services
│ └── ProjectService.cs
│
├── ViewModels
│ ├── ProjectCreateViewModel.cs
│ ├── ProjectUsersViewModel.cs
│ └── TaskCreateViewModel.cs
│
├── Views
│ ├── Admin
│ ├── Project
│ └── Task
│
├── Areas
│ └── Identity
│
├── appsettings.json
├── Program.cs
└── README.md
SQL Server (LocalDB veya Express)
Visual Studio 2022