├── .gitattributes ├── .gitignore ├── Episode 22 -MailKitDemo ├── .gitattributes ├── .gitignore ├── MailKitDemo.sln ├── MailKitDemo │ ├── Configurations │ │ └── EmailConfiguration.cs │ ├── Controllers │ │ ├── EmailController.cs │ │ └── WeatherForecastController.cs │ ├── DTOs │ │ └── SendEmailDto.cs │ ├── MailKitDemo.csproj │ ├── Program.cs │ ├── Properties │ │ └── launchSettings.json │ ├── Services │ │ ├── EmailService.cs │ │ └── Interfaces │ │ │ └── IEmailService.cs │ ├── WeatherForecast.cs │ ├── appsettings.Development.json │ └── appsettings.json └── README.md ├── Episode 23 - DapperDemo ├── .gitattributes ├── .gitignore ├── DapperDemo.sln ├── DapperDemo │ ├── Contexts │ │ └── DapperContext.cs │ ├── Contracts │ │ └── INewsletterRepository.cs │ ├── Controllers │ │ ├── NewsletterController.cs │ │ └── WeatherForecastController.cs │ ├── DTOs │ │ └── NewsletterDTO.cs │ ├── DapperDemo.csproj │ ├── Entities │ │ └── Newsletter.cs │ ├── Program.cs │ ├── Properties │ │ └── launchSettings.json │ ├── Repositories │ │ └── NewsletterRepository.cs │ ├── WeatherForecast.cs │ ├── appsettings.Development.json │ └── appsettings.json ├── README.md └── script.sql ├── Episode 24 - GrpcDemo ├── .gitattributes ├── .gitignore ├── GprcServer │ ├── Abstractions │ │ ├── IMemoryCacheOptions.cs │ │ └── IPrimeNumbersRepository.cs │ ├── DTOs │ │ └── Occurance.cs │ ├── Extensions │ │ └── Extensions.cs │ ├── GprcServer.csproj │ ├── Helpers │ │ └── TripTimeProvider.cs │ ├── Jobs │ │ └── PrimeNumbersJob.cs │ ├── Program.cs │ ├── Properties │ │ └── launchSettings.json │ ├── Protos │ │ └── primeNumbers.proto │ ├── Repositories │ │ ├── MemoryCacheOptions.cs │ │ └── PrimeNumbersRepository.cs │ ├── Services │ │ └── PrimeNumbersService.cs │ ├── appsettings.Development.json │ └── appsettings.json ├── GrpcClient │ ├── GrpcClient.csproj │ ├── Handlers │ │ ├── PrimeRequestHandler.cs │ │ └── PrimeRequestResponseHandler.cs │ ├── Helpers │ │ ├── ConfigurationProvider.cs │ │ ├── DateTimeProvider.cs │ │ ├── HostProvider.cs │ │ └── RandomNumberProvider.cs │ ├── Program.cs │ ├── Protos │ │ └── primeNumbers.proto │ └── appsettings.json ├── GrpcDemo.sln └── README.md ├── Episode 25 - InMemoryCacheDemo ├── .gitattributes ├── .gitignore ├── InMemoryCacheDemo.sln ├── InMemoryCacheDemo │ ├── Abstractions │ │ ├── Cache │ │ │ └── IMemoryCacheOptions.cs │ │ └── PrimeNumbers │ │ │ └── IPrimeNumbersService.cs │ ├── Controllers │ │ └── PrimeNumbersController.cs │ ├── DTOs │ │ └── PrimeCacheResult.cs │ ├── Extensions │ │ └── Extensions.cs │ ├── InMemoryCacheDemo.csproj │ ├── Program.cs │ ├── Properties │ │ └── launchSettings.json │ ├── Services │ │ ├── Cache │ │ │ └── MemoryCacheOptions.cs │ │ └── PrimeNumbers │ │ │ └── PrimeNumbersService.cs │ ├── appsettings.Development.json │ └── appsettings.json └── README.md ├── Episode 27 - MinimalAPIDemo ├── .gitattributes ├── .gitignore ├── MinimalAPIDemo.sln ├── MinimalAPIDemo │ ├── Controllers │ │ └── UsersController.cs │ ├── DTOs │ │ └── UserDTO.cs │ ├── EndPoints │ │ └── UserEndPoint.cs │ ├── MinimalAPIDemo.csproj │ ├── Program.cs │ ├── Properties │ │ └── launchSettings.json │ ├── appsettings.Development.json │ └── appsettings.json └── README.md ├── Episode 30 - FluentValidationDemo ├── .gitattributes ├── .gitignore ├── FluentValidationDemo.sln ├── FluentValidationDemo │ ├── Controllers │ │ ├── StudentController.cs │ │ └── WeatherForecastController.cs │ ├── DTOs │ │ └── StudentDto.cs │ ├── Extensions │ │ └── ErrorBuilder.cs │ ├── FluentValidationDemo.csproj │ ├── Program.cs │ ├── Properties │ │ └── launchSettings.json │ ├── Validators │ │ └── StudentValidator.cs │ ├── WeatherForecast.cs │ ├── appsettings.Development.json │ └── appsettings.json └── README.md ├── Episode 32 - RefitClientDemo ├── .gitattributes ├── .gitignore ├── ConsoleApp │ ├── ConsoleApp.Client.csproj │ ├── Interfaces │ │ └── IUser.cs │ └── Program.cs ├── DTOs │ ├── DTOs.csproj │ └── UserDTO.cs ├── README.md ├── RefitClientDemo.sln └── RefitClientDemo │ ├── Controllers │ └── UserController.cs │ ├── Program.cs │ ├── Properties │ └── launchSettings.json │ ├── RefitClientDemo.API.csproj │ ├── appsettings.Development.json │ └── appsettings.json ├── Episode 33 - SecurityHeadersDemoAPI ├── SecurityHeadersDemoAPI.sln └── SecurityHeadersDemoAPI │ ├── Controllers │ └── WeatherForecastController.cs │ ├── Middlewares │ └── SecureHeadersMiddleware.cs │ ├── Program.cs │ ├── Properties │ └── launchSettings.json │ ├── SecurityHeadersDemoAPI.csproj │ ├── WeatherForecast.cs │ ├── appsettings.Development.json │ └── appsettings.json ├── Episode 34 - IpAddressSafeListAPI ├── IpAddressSafeListAPI.sln └── IpAddressSafeListAPI │ ├── Controllers │ └── WeatherForecastController.cs │ ├── Filters │ └── Action │ │ └── WhitelistIpActionFilter.cs │ ├── IpAddressSafeListAPI.csproj │ ├── Middlewares │ └── WhitelistIpMiddleware.cs │ ├── Program.cs │ ├── Properties │ └── launchSettings.json │ ├── WeatherForecast.cs │ ├── appsettings.Development.json │ └── appsettings.json ├── Episode 35 - DelegatingHandlerDemo ├── DelegatingHandlerDemo.sln └── DelegatingHandlerDemo │ ├── Controllers │ └── DogsController.cs │ ├── DelegateHandlers │ └── LoggingHandler.cs │ ├── DelegatingHandlerDemo.csproj │ ├── Models │ └── GetDogFactsResponse.cs │ ├── Program.cs │ ├── Properties │ └── launchSettings.json │ ├── Services │ ├── DogsService.cs │ ├── IDogsAPI.cs │ └── IDogsService.cs │ ├── appsettings.Development.json │ └── appsettings.json ├── Episode 40 - CreateAndPublishNugetPackage └── NugetPackageDemo │ ├── NugetPackageDemo.sln │ └── NugetPackageDemo │ ├── NugetPackageDemo.csproj │ └── RandomGenerator.cs ├── Episode 45 - ApiKeyAuthenticationDemo ├── ApiKeyAuthenticationDemo.sln └── ApiKeyAuthenticationDemo │ ├── ApiKeyAuthenticationDemo.csproj │ ├── Authentication │ └── ApiKeyAuthorizationFilter.cs │ ├── Controllers │ └── StudentControlller.cs │ ├── Program.cs │ ├── Properties │ └── launchSettings.json │ ├── WeatherForecast.cs │ ├── appsettings.Development.json │ └── appsettings.json └── README.md /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/.gitignore -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/.gitattributes -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/.gitignore -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/MailKitDemo.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/MailKitDemo.sln -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/MailKitDemo/Configurations/EmailConfiguration.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/MailKitDemo/Configurations/EmailConfiguration.cs -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/MailKitDemo/Controllers/EmailController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/MailKitDemo/Controllers/EmailController.cs -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/MailKitDemo/Controllers/WeatherForecastController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/MailKitDemo/Controllers/WeatherForecastController.cs -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/MailKitDemo/DTOs/SendEmailDto.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/MailKitDemo/DTOs/SendEmailDto.cs -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/MailKitDemo/MailKitDemo.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/MailKitDemo/MailKitDemo.csproj -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/MailKitDemo/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/MailKitDemo/Program.cs -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/MailKitDemo/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/MailKitDemo/Properties/launchSettings.json -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/MailKitDemo/Services/EmailService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/MailKitDemo/Services/EmailService.cs -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/MailKitDemo/Services/Interfaces/IEmailService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/MailKitDemo/Services/Interfaces/IEmailService.cs -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/MailKitDemo/WeatherForecast.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/MailKitDemo/WeatherForecast.cs -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/MailKitDemo/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/MailKitDemo/appsettings.Development.json -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/MailKitDemo/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/MailKitDemo/appsettings.json -------------------------------------------------------------------------------- /Episode 22 -MailKitDemo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 22 -MailKitDemo/README.md -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/.gitattributes -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/.gitignore -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/DapperDemo.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/DapperDemo.sln -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/DapperDemo/Contexts/DapperContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/DapperDemo/Contexts/DapperContext.cs -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/DapperDemo/Contracts/INewsletterRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/DapperDemo/Contracts/INewsletterRepository.cs -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/DapperDemo/Controllers/NewsletterController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/DapperDemo/Controllers/NewsletterController.cs -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/DapperDemo/Controllers/WeatherForecastController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/DapperDemo/Controllers/WeatherForecastController.cs -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/DapperDemo/DTOs/NewsletterDTO.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/DapperDemo/DTOs/NewsletterDTO.cs -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/DapperDemo/DapperDemo.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/DapperDemo/DapperDemo.csproj -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/DapperDemo/Entities/Newsletter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/DapperDemo/Entities/Newsletter.cs -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/DapperDemo/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/DapperDemo/Program.cs -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/DapperDemo/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/DapperDemo/Properties/launchSettings.json -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/DapperDemo/Repositories/NewsletterRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/DapperDemo/Repositories/NewsletterRepository.cs -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/DapperDemo/WeatherForecast.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/DapperDemo/WeatherForecast.cs -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/DapperDemo/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/DapperDemo/appsettings.Development.json -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/DapperDemo/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/DapperDemo/appsettings.json -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/README.md -------------------------------------------------------------------------------- /Episode 23 - DapperDemo/script.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 23 - DapperDemo/script.sql -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/.gitattributes -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/.gitignore -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/Abstractions/IMemoryCacheOptions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/Abstractions/IMemoryCacheOptions.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/Abstractions/IPrimeNumbersRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/Abstractions/IPrimeNumbersRepository.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/DTOs/Occurance.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/DTOs/Occurance.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/Extensions/Extensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/Extensions/Extensions.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/GprcServer.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/GprcServer.csproj -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/Helpers/TripTimeProvider.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/Helpers/TripTimeProvider.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/Jobs/PrimeNumbersJob.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/Jobs/PrimeNumbersJob.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/Program.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/Properties/launchSettings.json -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/Protos/primeNumbers.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/Protos/primeNumbers.proto -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/Repositories/MemoryCacheOptions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/Repositories/MemoryCacheOptions.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/Repositories/PrimeNumbersRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/Repositories/PrimeNumbersRepository.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/Services/PrimeNumbersService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/Services/PrimeNumbersService.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/appsettings.Development.json -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GprcServer/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GprcServer/appsettings.json -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GrpcClient/GrpcClient.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GrpcClient/GrpcClient.csproj -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GrpcClient/Handlers/PrimeRequestHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GrpcClient/Handlers/PrimeRequestHandler.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GrpcClient/Handlers/PrimeRequestResponseHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GrpcClient/Handlers/PrimeRequestResponseHandler.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GrpcClient/Helpers/ConfigurationProvider.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GrpcClient/Helpers/ConfigurationProvider.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GrpcClient/Helpers/DateTimeProvider.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GrpcClient/Helpers/DateTimeProvider.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GrpcClient/Helpers/HostProvider.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GrpcClient/Helpers/HostProvider.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GrpcClient/Helpers/RandomNumberProvider.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GrpcClient/Helpers/RandomNumberProvider.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GrpcClient/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GrpcClient/Program.cs -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GrpcClient/Protos/primeNumbers.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GrpcClient/Protos/primeNumbers.proto -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GrpcClient/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GrpcClient/appsettings.json -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/GrpcDemo.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/GrpcDemo.sln -------------------------------------------------------------------------------- /Episode 24 - GrpcDemo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 24 - GrpcDemo/README.md -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/.gitattributes -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/.gitignore -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo.sln -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Abstractions/Cache/IMemoryCacheOptions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Abstractions/Cache/IMemoryCacheOptions.cs -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Abstractions/PrimeNumbers/IPrimeNumbersService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Abstractions/PrimeNumbers/IPrimeNumbersService.cs -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Controllers/PrimeNumbersController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Controllers/PrimeNumbersController.cs -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/DTOs/PrimeCacheResult.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/DTOs/PrimeCacheResult.cs -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Extensions/Extensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Extensions/Extensions.cs -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/InMemoryCacheDemo.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/InMemoryCacheDemo.csproj -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Program.cs -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Properties/launchSettings.json -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Services/Cache/MemoryCacheOptions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Services/Cache/MemoryCacheOptions.cs -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Services/PrimeNumbers/PrimeNumbersService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/Services/PrimeNumbers/PrimeNumbersService.cs -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/appsettings.Development.json -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/InMemoryCacheDemo/appsettings.json -------------------------------------------------------------------------------- /Episode 25 - InMemoryCacheDemo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 25 - InMemoryCacheDemo/README.md -------------------------------------------------------------------------------- /Episode 27 - MinimalAPIDemo/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 27 - MinimalAPIDemo/.gitattributes -------------------------------------------------------------------------------- /Episode 27 - MinimalAPIDemo/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 27 - MinimalAPIDemo/.gitignore -------------------------------------------------------------------------------- /Episode 27 - MinimalAPIDemo/MinimalAPIDemo.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 27 - MinimalAPIDemo/MinimalAPIDemo.sln -------------------------------------------------------------------------------- /Episode 27 - MinimalAPIDemo/MinimalAPIDemo/Controllers/UsersController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 27 - MinimalAPIDemo/MinimalAPIDemo/Controllers/UsersController.cs -------------------------------------------------------------------------------- /Episode 27 - MinimalAPIDemo/MinimalAPIDemo/DTOs/UserDTO.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 27 - MinimalAPIDemo/MinimalAPIDemo/DTOs/UserDTO.cs -------------------------------------------------------------------------------- /Episode 27 - MinimalAPIDemo/MinimalAPIDemo/EndPoints/UserEndPoint.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 27 - MinimalAPIDemo/MinimalAPIDemo/EndPoints/UserEndPoint.cs -------------------------------------------------------------------------------- /Episode 27 - MinimalAPIDemo/MinimalAPIDemo/MinimalAPIDemo.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 27 - MinimalAPIDemo/MinimalAPIDemo/MinimalAPIDemo.csproj -------------------------------------------------------------------------------- /Episode 27 - MinimalAPIDemo/MinimalAPIDemo/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 27 - MinimalAPIDemo/MinimalAPIDemo/Program.cs -------------------------------------------------------------------------------- /Episode 27 - MinimalAPIDemo/MinimalAPIDemo/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 27 - MinimalAPIDemo/MinimalAPIDemo/Properties/launchSettings.json -------------------------------------------------------------------------------- /Episode 27 - MinimalAPIDemo/MinimalAPIDemo/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 27 - MinimalAPIDemo/MinimalAPIDemo/appsettings.Development.json -------------------------------------------------------------------------------- /Episode 27 - MinimalAPIDemo/MinimalAPIDemo/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 27 - MinimalAPIDemo/MinimalAPIDemo/appsettings.json -------------------------------------------------------------------------------- /Episode 27 - MinimalAPIDemo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 27 - MinimalAPIDemo/README.md -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/.gitattributes -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/.gitignore -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/FluentValidationDemo.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/FluentValidationDemo.sln -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/FluentValidationDemo/Controllers/StudentController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/FluentValidationDemo/Controllers/StudentController.cs -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/FluentValidationDemo/Controllers/WeatherForecastController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/FluentValidationDemo/Controllers/WeatherForecastController.cs -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/FluentValidationDemo/DTOs/StudentDto.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/FluentValidationDemo/DTOs/StudentDto.cs -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/FluentValidationDemo/Extensions/ErrorBuilder.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/FluentValidationDemo/Extensions/ErrorBuilder.cs -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/FluentValidationDemo/FluentValidationDemo.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/FluentValidationDemo/FluentValidationDemo.csproj -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/FluentValidationDemo/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/FluentValidationDemo/Program.cs -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/FluentValidationDemo/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/FluentValidationDemo/Properties/launchSettings.json -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/FluentValidationDemo/Validators/StudentValidator.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/FluentValidationDemo/Validators/StudentValidator.cs -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/FluentValidationDemo/WeatherForecast.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/FluentValidationDemo/WeatherForecast.cs -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/FluentValidationDemo/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/FluentValidationDemo/appsettings.Development.json -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/FluentValidationDemo/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/FluentValidationDemo/appsettings.json -------------------------------------------------------------------------------- /Episode 30 - FluentValidationDemo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 30 - FluentValidationDemo/README.md -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/.gitattributes -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/.gitignore -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/ConsoleApp/ConsoleApp.Client.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/ConsoleApp/ConsoleApp.Client.csproj -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/ConsoleApp/Interfaces/IUser.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/ConsoleApp/Interfaces/IUser.cs -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/ConsoleApp/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/ConsoleApp/Program.cs -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/DTOs/DTOs.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/DTOs/DTOs.csproj -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/DTOs/UserDTO.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/DTOs/UserDTO.cs -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/README.md -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/RefitClientDemo.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/RefitClientDemo.sln -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/RefitClientDemo/Controllers/UserController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/RefitClientDemo/Controllers/UserController.cs -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/RefitClientDemo/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/RefitClientDemo/Program.cs -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/RefitClientDemo/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/RefitClientDemo/Properties/launchSettings.json -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/RefitClientDemo/RefitClientDemo.API.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/RefitClientDemo/RefitClientDemo.API.csproj -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/RefitClientDemo/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/RefitClientDemo/appsettings.Development.json -------------------------------------------------------------------------------- /Episode 32 - RefitClientDemo/RefitClientDemo/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 32 - RefitClientDemo/RefitClientDemo/appsettings.json -------------------------------------------------------------------------------- /Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI.sln -------------------------------------------------------------------------------- /Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/Controllers/WeatherForecastController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/Controllers/WeatherForecastController.cs -------------------------------------------------------------------------------- /Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/Middlewares/SecureHeadersMiddleware.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/Middlewares/SecureHeadersMiddleware.cs -------------------------------------------------------------------------------- /Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/Program.cs -------------------------------------------------------------------------------- /Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/Properties/launchSettings.json -------------------------------------------------------------------------------- /Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/SecurityHeadersDemoAPI.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/SecurityHeadersDemoAPI.csproj -------------------------------------------------------------------------------- /Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/WeatherForecast.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/WeatherForecast.cs -------------------------------------------------------------------------------- /Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/appsettings.Development.json -------------------------------------------------------------------------------- /Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 33 - SecurityHeadersDemoAPI/SecurityHeadersDemoAPI/appsettings.json -------------------------------------------------------------------------------- /Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI.sln -------------------------------------------------------------------------------- /Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/Controllers/WeatherForecastController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/Controllers/WeatherForecastController.cs -------------------------------------------------------------------------------- /Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/Filters/Action/WhitelistIpActionFilter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/Filters/Action/WhitelistIpActionFilter.cs -------------------------------------------------------------------------------- /Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/IpAddressSafeListAPI.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/IpAddressSafeListAPI.csproj -------------------------------------------------------------------------------- /Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/Middlewares/WhitelistIpMiddleware.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/Middlewares/WhitelistIpMiddleware.cs -------------------------------------------------------------------------------- /Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/Program.cs -------------------------------------------------------------------------------- /Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/Properties/launchSettings.json -------------------------------------------------------------------------------- /Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/WeatherForecast.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/WeatherForecast.cs -------------------------------------------------------------------------------- /Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/appsettings.Development.json -------------------------------------------------------------------------------- /Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 34 - IpAddressSafeListAPI/IpAddressSafeListAPI/appsettings.json -------------------------------------------------------------------------------- /Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo.sln -------------------------------------------------------------------------------- /Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/Controllers/DogsController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/Controllers/DogsController.cs -------------------------------------------------------------------------------- /Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/DelegateHandlers/LoggingHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/DelegateHandlers/LoggingHandler.cs -------------------------------------------------------------------------------- /Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/DelegatingHandlerDemo.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/DelegatingHandlerDemo.csproj -------------------------------------------------------------------------------- /Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/Models/GetDogFactsResponse.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/Models/GetDogFactsResponse.cs -------------------------------------------------------------------------------- /Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/Program.cs -------------------------------------------------------------------------------- /Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/Properties/launchSettings.json -------------------------------------------------------------------------------- /Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/Services/DogsService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/Services/DogsService.cs -------------------------------------------------------------------------------- /Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/Services/IDogsAPI.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/Services/IDogsAPI.cs -------------------------------------------------------------------------------- /Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/Services/IDogsService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/Services/IDogsService.cs -------------------------------------------------------------------------------- /Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/appsettings.Development.json -------------------------------------------------------------------------------- /Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 35 - DelegatingHandlerDemo/DelegatingHandlerDemo/appsettings.json -------------------------------------------------------------------------------- /Episode 40 - CreateAndPublishNugetPackage/NugetPackageDemo/NugetPackageDemo.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 40 - CreateAndPublishNugetPackage/NugetPackageDemo/NugetPackageDemo.sln -------------------------------------------------------------------------------- /Episode 40 - CreateAndPublishNugetPackage/NugetPackageDemo/NugetPackageDemo/NugetPackageDemo.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 40 - CreateAndPublishNugetPackage/NugetPackageDemo/NugetPackageDemo/NugetPackageDemo.csproj -------------------------------------------------------------------------------- /Episode 40 - CreateAndPublishNugetPackage/NugetPackageDemo/NugetPackageDemo/RandomGenerator.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 40 - CreateAndPublishNugetPackage/NugetPackageDemo/NugetPackageDemo/RandomGenerator.cs -------------------------------------------------------------------------------- /Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo.sln -------------------------------------------------------------------------------- /Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo.csproj -------------------------------------------------------------------------------- /Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/Authentication/ApiKeyAuthorizationFilter.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/Authentication/ApiKeyAuthorizationFilter.cs -------------------------------------------------------------------------------- /Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/Controllers/StudentControlller.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/Controllers/StudentControlller.cs -------------------------------------------------------------------------------- /Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/Program.cs -------------------------------------------------------------------------------- /Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/Properties/launchSettings.json -------------------------------------------------------------------------------- /Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/WeatherForecast.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/WeatherForecast.cs -------------------------------------------------------------------------------- /Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/appsettings.Development.json -------------------------------------------------------------------------------- /Episode 45 - ApiKeyAuthenticationDemo/ApiKeyAuthenticationDemo/appsettings.json: -------------------------------------------------------------------------------- 1 | { 2 | "ApiKey": "3DBF7CF8-64CA-43C5-8840-9EA60E5A5A75" 3 | } 4 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mwaseemzakir/Newsletter/HEAD/README.md --------------------------------------------------------------------------------