Skip to content

emir57/NTechBackend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NTechBackend

⬇️ Used Technologies ⬇️

  • Autofac
  • Serilog
  • FluentValidation
  • RabbitMq
  • Hangfire and BackgroundService
  • Redis Cache
  • Microsoft Memory Cache
  • AutoMapper
  • EntityFrameworkCore
  • JWT

Async Programming ⚙️
Aspect Oriented Programming ⚙️
Hashing Password 🔑
Email Service 📧

Cache and Cache Remove Aspects 🧰
Performance Aspects 🚀
Validation Aspects ✔️
Secure Aspects 🛡️
Log Aspects 📓
Exception Log Aspects ❌

Startup

⬇️ Connection Strings in appsettings.json ⬇️

"ConnectionStrings": {
    "SqlServer": "Server=DESKTOP-HVLQH67\\SQLEXPRESS;Database=NTechDb;integrated security=true",
    "PostgreSql": "User ID=postgres;Password=123;Host=localhost;Port=5432;Database=NTechDb;"
  },

⬇️ Select Database in appsettings.json - PostgreSql or SqlServer ⬇️

"Database": "PostgreSql"

⬇️ Add Migration - Package Manager Console ⬇️

⚠️ if you use postgresql and hangfire, create the "NTechDb" database in SqlServer ⚠️

⬇️ Use Hangfire or BackgroundService in appsettings.json ⬇️

  "UseHangFire": false,
  "UseBackgroundServices": true

⬇️ Jwt Options in appsettings.json ⬇️

"AccessTokenOptions": {
    "Audience": "emir57",
    "Issuer": "www.ntech.com.tr",
    "AccessTokenExpiration": 60,
    "SecurityKey": "nCsFlhJlNp62k1iM49q2-+?caSrvNte"
  }

⬇️ Redis Configuration in appsettings.json ⬇️

"RedisConfiguration": {
    "Host": "localhost",
    "Port": 49153,
    "Password": "redispw"
  }

⬇️ Email Configuration in appsettings.json ⬇️

"EmailConfiguration": {
    "Port": 587,
    "Server": "smtp.office365.com",
    "EnableSsl": true,
    "Username": "username@hotmail.com",
    "Password": "***"
  }

⬇️ Email Messages in appsettings.json ⬇️

"EmailMessages": {
    "AcceptOfferSubject": "Teklifiniz Onaylandı",
    "AcceptOfferBody": "Merhaba {0} {1}, teklifiniz onaylandı :)",
    "DenyOfferSubject": "Teklifiniz Reddedildi",
    "DenyOfferBody": "Merhaba {0} {1}, teklifiniz reddedildi :(",
    "LockAccountSubject": "Uyarı",
    "LockAccountBody": "Sayın {0} {1} üç defa başarısız giriş sonucunda hesabınız kilitlenmiştir. 3 dakika sonra tekrar deneyiniz.",
    "LoginSubject": "Giriş Başarılı",
    "LoginBody": "Hoşgeldiniz {0} {1}"
  }

⬇️ RabbitMq Configuration in appsettings.json ⬇️

"MessageBrokerOptions": {
    "HostName": "localhost",
    "UserName": "admin",
    "Password": "123456"
  }

⬇️ SeriLog Configuration in appsettings.json ⬇️

"SeriLogConfigurations": {
    "FileLogConfiguration": {
      "FolderPath": "/logs/"
    }
  }

⬇️ Admin Email appsettings.json ⬇️

"AdminUser": {
    "Email": "emir.gurbuz06@hotmail.com"
  }

⬇️ Upload Image Path in appsettings.json ⬇️

"UploadImagePath": "wwwroot/images/"

⬇️ Select Language in appsettings.json - Tr or En ⬇️

"MessageResultLanguage": "Tr"

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages