logger)
17 | {
18 | id = Guid.NewGuid().ToString();
19 | this.logger = logger;
20 | this.logger.LogInformation("Transient service with instance id {0} start", id);
21 | }
22 |
23 | public void Dispose()
24 | {
25 | this.logger.LogInformation("Transient service with instance id {0} dispose", id);
26 | }
27 |
28 | public string GetId()
29 | {
30 | return id;
31 | }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/Views/Home/Index.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | ViewData["Title"] = "Home Page";
3 | }
4 |
5 |
9 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/Views/Home/Scoped.cshtml:
--------------------------------------------------------------------------------
1 | @model IdModel
2 |
3 | Scoped Service Id: @Model.ControllerId, DependencyServiceId - @Model.DependencyServiceId
4 |
5 |
6 | Use cases
7 |
8 |
9 |
10 | - Save request context information.
11 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/Views/Home/Singleton.cshtml:
--------------------------------------------------------------------------------
1 | @model IdModel
2 |
3 | Singleton Service id: @Model.ControllerId, DependencyServiceId - @Model.DependencyServiceId
4 |
5 |
6 | Use cases
7 |
8 |
9 |
10 | - Clients: HttpClient, Cache, DB
11 | - Global Configurations
12 | - Application states
13 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/Views/Home/Transient.cshtml:
--------------------------------------------------------------------------------
1 | @model IdModel
2 |
3 | Transient Service id - @Model.ControllerId, DependencyServiceId - @Model.DependencyServiceId
4 |
5 |
6 | Use cases
7 |
8 |
9 |
10 | - File access
11 | - When you need a fresh instance of an object every single time.
12 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/Views/Shared/Error.cshtml:
--------------------------------------------------------------------------------
1 | @model ErrorViewModel
2 | @{
3 | ViewData["Title"] = "Error";
4 | }
5 |
6 | Error.
7 | An error occurred while processing your request.
8 |
9 | @if (Model.ShowRequestId)
10 | {
11 |
12 | Request ID: @Model.RequestId
13 |
14 | }
15 |
16 | Development Mode
17 |
18 | Swapping to Development environment will display more detailed information about the error that occurred.
19 |
20 |
21 | The Development environment shouldn't be enabled for deployed applications.
22 | It can result in displaying sensitive information from exceptions to end users.
23 | For local debugging, enable the Development environment by setting the ASPNETCORE_ENVIRONMENT environment variable to Development
24 | and restarting the app.
25 |
26 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/Views/Shared/_ValidationScriptsPartial.cshtml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/Views/_ViewImports.cshtml:
--------------------------------------------------------------------------------
1 | @using DependencyInjection
2 | @using DependencyInjection.Models
3 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
4 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/Views/_ViewStart.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | Layout = "_Layout";
3 | }
4 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/wwwroot/css/site.css:
--------------------------------------------------------------------------------
1 | /* Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
2 | for details on configuring this project to bundle and minify static web assets. */
3 |
4 | a.navbar-brand {
5 | white-space: normal;
6 | text-align: center;
7 | word-break: break-all;
8 | }
9 |
10 | /* Provide sufficient contrast against white background */
11 | a {
12 | color: #0366d6;
13 | }
14 |
15 | .btn-primary {
16 | color: #fff;
17 | background-color: #1b6ec2;
18 | border-color: #1861ac;
19 | }
20 |
21 | .nav-pills .nav-link.active, .nav-pills .show > .nav-link {
22 | color: #fff;
23 | background-color: #1b6ec2;
24 | border-color: #1861ac;
25 | }
26 |
27 | /* Sticky footer styles
28 | -------------------------------------------------- */
29 | html {
30 | font-size: 14px;
31 | }
32 | @media (min-width: 768px) {
33 | html {
34 | font-size: 16px;
35 | }
36 | }
37 |
38 | .border-top {
39 | border-top: 1px solid #e5e5e5;
40 | }
41 | .border-bottom {
42 | border-bottom: 1px solid #e5e5e5;
43 | }
44 |
45 | .box-shadow {
46 | box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
47 | }
48 |
49 | button.accept-policy {
50 | font-size: 1rem;
51 | line-height: inherit;
52 | }
53 |
54 | /* Sticky footer styles
55 | -------------------------------------------------- */
56 | html {
57 | position: relative;
58 | min-height: 100%;
59 | }
60 |
61 | body {
62 | /* Margin bottom by footer height */
63 | margin-bottom: 60px;
64 | }
65 | .footer {
66 | position: absolute;
67 | bottom: 0;
68 | width: 100%;
69 | white-space: nowrap;
70 | line-height: 60px; /* Vertically center the text there */
71 | }
72 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/CSharp/DependencyInjection/DependencyInjection/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/wwwroot/js/site.js:
--------------------------------------------------------------------------------
1 | // Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
2 | // for details on configuring this project to bundle and minify static web assets.
3 |
4 | // Write your JavaScript code.
5 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/wwwroot/lib/bootstrap/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2011-2018 Twitter, Inc.
4 | Copyright (c) 2011-2018 The Bootstrap Authors
5 |
6 | Permission is hereby granted, free of charge, to any person obtaining a copy
7 | of this software and associated documentation files (the "Software"), to deal
8 | in the Software without restriction, including without limitation the rights
9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | copies of the Software, and to permit persons to whom the Software is
11 | furnished to do so, subject to the following conditions:
12 |
13 | The above copyright notice and this permission notice shall be included in
14 | all copies or substantial portions of the Software.
15 |
16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 | THE SOFTWARE.
23 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/wwwroot/lib/jquery-validation-unobtrusive/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) .NET Foundation. All rights reserved.
2 |
3 | Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4 | these files except in compliance with the License. You may obtain a copy of the
5 | License at
6 |
7 | http://www.apache.org/licenses/LICENSE-2.0
8 |
9 | Unless required by applicable law or agreed to in writing, software distributed
10 | under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
11 | CONDITIONS OF ANY KIND, either express or implied. See the License for the
12 | specific language governing permissions and limitations under the License.
13 |
--------------------------------------------------------------------------------
/CSharp/DependencyInjection/DependencyInjection/wwwroot/lib/jquery/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright JS Foundation and other contributors, https://js.foundation/
2 |
3 | This software consists of voluntary contributions made by many
4 | individuals. For exact contribution history, see the revision history
5 | available at https://github.com/jquery/jquery
6 |
7 | The following license applies to all parts of this software except as
8 | documented below:
9 |
10 | ====
11 |
12 | Permission is hereby granted, free of charge, to any person obtaining
13 | a copy of this software and associated documentation files (the
14 | "Software"), to deal in the Software without restriction, including
15 | without limitation the rights to use, copy, modify, merge, publish,
16 | distribute, sublicense, and/or sell copies of the Software, and to
17 | permit persons to whom the Software is furnished to do so, subject to
18 | the following conditions:
19 |
20 | The above copyright notice and this permission notice shall be
21 | included in all copies or substantial portions of the Software.
22 |
23 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
24 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
25 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
26 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
27 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
28 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
29 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30 |
31 | ====
32 |
33 | All files located in the node_modules and external directories are
34 | externally maintained libraries used by this software which have their
35 | own licenses; we recommend you read them, as their terms may differ from
36 | the terms above.
37 |
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/.vs/DependencyInversion/DesignTimeBuild/.dtbcache.v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/CSharp/DependencyInversion/.vs/DependencyInversion/DesignTimeBuild/.dtbcache.v2
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/.vs/DependencyInversion/v16/.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/CSharp/DependencyInversion/.vs/DependencyInversion/v16/.suo
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/DependencyInversion.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio Version 16
4 | VisualStudioVersion = 16.0.31410.357
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DependencyInversion", "DependencyInversion\DependencyInversion.csproj", "{D2567504-04B3-4290-8ECD-0F9C0808EE8C}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {D2567504-04B3-4290-8ECD-0F9C0808EE8C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {D2567504-04B3-4290-8ECD-0F9C0808EE8C}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {D2567504-04B3-4290-8ECD-0F9C0808EE8C}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {D2567504-04B3-4290-8ECD-0F9C0808EE8C}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | GlobalSection(ExtensibilityGlobals) = postSolution
23 | SolutionGuid = {BAB372A1-CD36-4E7E-BC21-51EC5007715B}
24 | EndGlobalSection
25 | EndGlobal
26 |
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/DependencyInversion/Bread.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 |
5 | namespace DependencyInversion
6 | {
7 | public class Bread
8 | {
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/DependencyInversion/Breakfast.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 |
5 | namespace DependencyInversion
6 | {
7 | public class Breakfast
8 | {
9 | public Coffee Coffee { get; set; }
10 |
11 | public Bread Bread { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/DependencyInversion/BreakfastMaker.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Threading.Tasks;
3 |
4 | namespace DependencyInversion
5 | {
6 | public class BreakfastMaker
7 | {
8 | private ICoffeeMachine coffeeMachine;
9 |
10 | private IToaster toaster;
11 |
12 | private CoffeeBean coffeeBean;
13 |
14 | private Milk milk;
15 |
16 | private Bread bread;
17 |
18 | public BreakfastMaker(ICoffeeMachine coffeeMachine, IToaster toaster, CoffeeBean coffeeBean, Milk milk, Bread bread)
19 | {
20 | this.coffeeMachine = coffeeMachine;
21 | this.toaster = toaster;
22 | this.coffeeBean = coffeeBean;
23 | this.milk = milk;
24 | this.bread = bread;
25 | }
26 |
27 | public async Task MakeBreakfast()
28 | {
29 | Console.WriteLine("Start to prepare breakfast.");
30 |
31 | Task coffeeTask = coffeeMachine.MakeCoffee(coffeeBean, milk);
32 | Task breadTask = toaster.ToastBread(bread);
33 |
34 | Coffee coffee = await coffeeTask;
35 | Bread newBread = await breadTask;
36 |
37 | Console.WriteLine("Breakfast is ready.");
38 |
39 | return new Breakfast()
40 | {
41 | Coffee = coffee,
42 | Bread = newBread
43 | };
44 | }
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/DependencyInversion/Coffee.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 |
5 | namespace DependencyInversion
6 | {
7 | public class Coffee
8 | {
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/DependencyInversion/CoffeeBean.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 |
5 | namespace DependencyInversion
6 | {
7 | public class CoffeeBean
8 | {
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/DependencyInversion/CoffeeMachine.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 | using System.Threading.Tasks;
5 |
6 | namespace DependencyInversion
7 | {
8 | public class CoffeeMachine : ICoffeeMachine
9 | {
10 | public Task MakeCoffee(CoffeeBean bean, Milk milk)
11 | {
12 | Console.WriteLine("Start to make a coffee");
13 |
14 | var coffee = new Coffee();
15 |
16 | Console.WriteLine("Coffee is ready");
17 |
18 | return Task.FromResult(coffee);
19 | }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/DependencyInversion/DependencyInversion.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Exe
5 | netcoreapp3.1
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/DependencyInversion/ICoffeeMachine.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 |
3 | namespace DependencyInversion
4 | {
5 | public interface ICoffeeMachine
6 | {
7 | Task MakeCoffee(CoffeeBean bean, Milk milk);
8 | }
9 | }
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/DependencyInversion/IToaster.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 |
3 | namespace DependencyInversion
4 | {
5 | public interface IToaster
6 | {
7 | Task ToastBread(Bread bread);
8 | }
9 | }
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/DependencyInversion/Milk.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 |
5 | namespace DependencyInversion
6 | {
7 | public class Milk
8 | {
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/DependencyInversion/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Threading.Tasks;
3 |
4 | namespace DependencyInversion
5 | {
6 | class Program
7 | {
8 | static async Task Main(string[] args)
9 | {
10 | ICoffeeMachine coffeeMachine = new CoffeeMachine();
11 |
12 | IToaster toaster = new Toaster();
13 |
14 | CoffeeBean coffeeBean = new CoffeeBean();
15 |
16 | Milk milk = new Milk();
17 |
18 | Bread bread = new Bread();
19 |
20 | BreakfastMaker breakfastMaker = new BreakfastMaker(coffeeMachine, toaster, coffeeBean, milk, bread);
21 |
22 | var breakfast = await breakfastMaker.MakeBreakfast();
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/CSharp/DependencyInversion/DependencyInversion/Toaster.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 | using System.Threading;
5 | using System.Threading.Tasks;
6 |
7 | namespace DependencyInversion
8 | {
9 | public class Toaster : IToaster
10 | {
11 | public async Task ToastBread(Bread bread)
12 | {
13 | Console.WriteLine("Start to toast a bread");
14 |
15 | await Task.Delay(1000);
16 |
17 | Console.WriteLine("bread is ready");
18 |
19 | return bread;
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/.vs/ContosoUniversity/DesignTimeBuild/.dtbcache.v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/.vs/ContosoUniversity/DesignTimeBuild/.dtbcache.v2
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/.vs/ContosoUniversity/v16/.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/.vs/ContosoUniversity/v16/.suo
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio Version 16
4 | VisualStudioVersion = 16.0.31613.86
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ContosoUniversity", "ContosoUniversity\ContosoUniversity.csproj", "{253D0498-9846-4A0A-8B07-3851D995B259}"
7 | EndProject
8 | Global
9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
10 | Debug|Any CPU = Debug|Any CPU
11 | Release|Any CPU = Release|Any CPU
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {253D0498-9846-4A0A-8B07-3851D995B259}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15 | {253D0498-9846-4A0A-8B07-3851D995B259}.Debug|Any CPU.Build.0 = Debug|Any CPU
16 | {253D0498-9846-4A0A-8B07-3851D995B259}.Release|Any CPU.ActiveCfg = Release|Any CPU
17 | {253D0498-9846-4A0A-8B07-3851D995B259}.Release|Any CPU.Build.0 = Release|Any CPU
18 | EndGlobalSection
19 | GlobalSection(SolutionProperties) = preSolution
20 | HideSolutionNode = FALSE
21 | EndGlobalSection
22 | GlobalSection(ExtensibilityGlobals) = postSolution
23 | SolutionGuid = {E4F9DECB-CC3D-4884-9564-E2E9DEB6BF9A}
24 | EndGlobalSection
25 | EndGlobal
26 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/ContosoUniversity.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net5.0
5 |
6 |
7 |
8 |
9 |
10 |
11 | all
12 | runtime; build; native; contentfiles; analyzers; buildtransitive
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/ContosoUniversity.csproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | <_SelectedScaffolderID>MvcControllerWithContextScaffolder
5 | <_SelectedScaffolderCategoryPath>root/Common
6 | 650
7 | True
8 | False
9 | True
10 |
11 | ContosoUniversity.Data.SchoolContext
12 | False
13 | True
14 | RazorViewEmptyScaffolder
15 | root/Common/MVC/View
16 |
17 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Data/SchoolContext.cs:
--------------------------------------------------------------------------------
1 | using ContosoUniversity.Models;
2 | using Microsoft.EntityFrameworkCore;
3 |
4 | namespace ContosoUniversity.Data
5 | {
6 | public class SchoolContext : DbContext
7 | {
8 | public SchoolContext(DbContextOptions options) : base(options)
9 | {
10 | }
11 |
12 | public DbSet Courses { get; set; }
13 | public DbSet Enrollments { get; set; }
14 | public DbSet Students { get; set; }
15 | public DbSet Departments { get; set; }
16 | public DbSet Instructors { get; set; }
17 | public DbSet OfficeAssignments { get; set; }
18 | public DbSet CourseAssignments { get; set; }
19 |
20 | protected override void OnModelCreating(ModelBuilder modelBuilder)
21 | {
22 | modelBuilder.Entity().ToTable("Course");
23 | modelBuilder.Entity().ToTable("Enrollment");
24 | modelBuilder.Entity().ToTable("Student");
25 | modelBuilder.Entity()
26 | .Property(p => p.RowVersion).IsConcurrencyToken();
27 | modelBuilder.Entity().ToTable("Instructor");
28 | modelBuilder.Entity().ToTable("OfficeAssignment");
29 | modelBuilder.Entity().ToTable("CourseAssignment");
30 |
31 | modelBuilder.Entity()
32 | .HasKey(c => new { c.CourseID, c.InstructorID });
33 | }
34 | }
35 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Models/Course.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.ComponentModel.DataAnnotations;
3 | using System.ComponentModel.DataAnnotations.Schema;
4 |
5 | namespace ContosoUniversity.Models
6 | {
7 | public class Course
8 | {
9 | [DatabaseGenerated(DatabaseGeneratedOption.None)]
10 | [Display(Name = "Number")]
11 | public int CourseID { get; set; }
12 |
13 | [StringLength(50, MinimumLength = 3)]
14 | public string Title { get; set; }
15 |
16 | [Range(0, 5)]
17 | public int Credits { get; set; }
18 |
19 | public int DepartmentID { get; set; }
20 |
21 | public Department Department { get; set; }
22 | public ICollection Enrollments { get; set; }
23 | public ICollection CourseAssignments { get; set; }
24 | }
25 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Models/CourseAssignment.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel.DataAnnotations;
4 | using System.ComponentModel.DataAnnotations.Schema;
5 |
6 | namespace ContosoUniversity.Models
7 | {
8 | public class CourseAssignment
9 | {
10 | public int InstructorID { get; set; }
11 | public int CourseID { get; set; }
12 | public Instructor Instructor { get; set; }
13 | public Course Course { get; set; }
14 | }
15 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Models/Department.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel.DataAnnotations;
4 | using System.ComponentModel.DataAnnotations.Schema;
5 |
6 | namespace ContosoUniversity.Models
7 | {
8 | public class Department
9 | {
10 | public int DepartmentID { get; set; }
11 |
12 | [StringLength(50, MinimumLength = 3)]
13 | public string Name { get; set; }
14 |
15 | [DataType(DataType.Currency)]
16 | [Column(TypeName = "money")]
17 | public decimal Budget { get; set; }
18 |
19 | [DataType(DataType.Date)]
20 | [DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
21 | [Display(Name = "Start Date")]
22 | public DateTime StartDate { get; set; }
23 |
24 | public int? InstructorID { get; set; }
25 |
26 | [Timestamp]
27 | public byte[] RowVersion { get; set; }
28 |
29 | public Instructor Administrator { get; set; }
30 | public ICollection Courses { get; set; }
31 | }
32 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Models/Enrollment.cs:
--------------------------------------------------------------------------------
1 | using System.ComponentModel.DataAnnotations;
2 |
3 | namespace ContosoUniversity.Models
4 | {
5 | public enum Grade
6 | {
7 | A, B, C, D, F
8 | }
9 |
10 | public class Enrollment
11 | {
12 | public int EnrollmentID { get; set; }
13 | public int CourseID { get; set; }
14 | public int StudentID { get; set; }
15 |
16 | [DisplayFormat(NullDisplayText = "No grade")]
17 | public Grade? Grade { get; set; }
18 |
19 | public Course Course { get; set; }
20 | public Student Student { get; set; }
21 | }
22 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Models/ErrorViewModel.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace ContosoUniversity.Models
4 | {
5 | public class ErrorViewModel
6 | {
7 | public string RequestId { get; set; }
8 |
9 | public bool ShowRequestId => !string.IsNullOrEmpty(RequestId);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Models/Instructor.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel.DataAnnotations;
4 | using System.ComponentModel.DataAnnotations.Schema;
5 |
6 | namespace ContosoUniversity.Models
7 | {
8 | public class Instructor
9 | {
10 | public int ID { get; set; }
11 |
12 | [Required]
13 | [Display(Name = "Last Name")]
14 | [StringLength(50)]
15 | public string LastName { get; set; }
16 |
17 | [Required]
18 | [Column("FirstName")]
19 | [Display(Name = "First Name")]
20 | [StringLength(50)]
21 | public string FirstMidName { get; set; }
22 |
23 | [DataType(DataType.Date)]
24 | [DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
25 | [Display(Name = "Hire Date")]
26 | public DateTime HireDate { get; set; }
27 |
28 | [Display(Name = "Full Name")]
29 | public string FullName
30 | {
31 | get { return LastName + ", " + FirstMidName; }
32 | }
33 |
34 | public ICollection CourseAssignments { get; set; }
35 | public OfficeAssignment OfficeAssignment { get; set; }
36 | }
37 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Models/OfficeAssignment.cs:
--------------------------------------------------------------------------------
1 | using System.ComponentModel.DataAnnotations;
2 | using System.ComponentModel.DataAnnotations.Schema;
3 |
4 | namespace ContosoUniversity.Models
5 | {
6 | public class OfficeAssignment
7 | {
8 | [Key]
9 | public int InstructorID { get; set; }
10 | [StringLength(50)]
11 | [Display(Name = "Office Location")]
12 | public string Location { get; set; }
13 |
14 | public Instructor Instructor { get; set; }
15 | }
16 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Models/SchoolViewModels/AssignedCourseData.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 |
6 | namespace ContosoUniversity.Models.SchoolViewModels
7 | {
8 | public class AssignedCourseData
9 | {
10 | public int CourseID { get; set; }
11 | public string Title { get; set; }
12 | public bool Assigned { get; set; }
13 | }
14 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Models/SchoolViewModels/EnrollmentDateGroup.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.ComponentModel.DataAnnotations;
3 |
4 | namespace ContosoUniversity.Models.SchoolViewModels
5 | {
6 | public class EnrollmentDateGroup
7 | {
8 | [DataType(DataType.Date)]
9 | public DateTime? EnrollmentDate { get; set; }
10 |
11 | public int StudentCount { get; set; }
12 | }
13 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Models/SchoolViewModels/InstructorIndexData.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 |
6 | namespace ContosoUniversity.Models.SchoolViewModels
7 | {
8 | public class InstructorIndexData
9 | {
10 | public IEnumerable Instructors { get; set; }
11 | public IEnumerable Courses { get; set; }
12 | public IEnumerable Enrollments { get; set; }
13 | }
14 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Models/Student.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.ComponentModel.DataAnnotations;
4 | using System.ComponentModel.DataAnnotations.Schema;
5 |
6 | namespace ContosoUniversity.Models
7 | {
8 | public class Student
9 | {
10 | public int ID { get; set; }
11 | [Required]
12 | [StringLength(50)]
13 | [Display(Name = "Last Name")]
14 | public string LastName { get; set; }
15 | [Required]
16 | [StringLength(50)]
17 | [Column("FirstName")]
18 | [Display(Name = "First Name")]
19 | public string FirstMidName { get; set; }
20 | [DataType(DataType.Date)]
21 | [DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
22 | [Display(Name = "Enrollment Date")]
23 | public DateTime EnrollmentDate { get; set; }
24 | [Display(Name = "Full Name")]
25 | public string FullName
26 | {
27 | get
28 | {
29 | return LastName + ", " + FirstMidName;
30 | }
31 | }
32 |
33 | public ICollection Enrollments { get; set; }
34 | }
35 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/PaginatedList.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 | using Microsoft.EntityFrameworkCore;
6 |
7 | namespace ContosoUniversity
8 | {
9 | public class PaginatedList : List
10 | {
11 | public int PageIndex { get; private set; }
12 | public int TotalPages { get; private set; }
13 |
14 | public PaginatedList(List items, int count, int pageIndex, int pageSize)
15 | {
16 | PageIndex = pageIndex;
17 | TotalPages = (int)Math.Ceiling(count / (double)pageSize);
18 |
19 | this.AddRange(items);
20 | }
21 |
22 | public bool HasPreviousPage
23 | {
24 | get
25 | {
26 | return (PageIndex > 1);
27 | }
28 | }
29 |
30 | public bool HasNextPage
31 | {
32 | get
33 | {
34 | return (PageIndex < TotalPages);
35 | }
36 | }
37 |
38 | public static async Task> CreateAsync(IQueryable source, int pageIndex, int pageSize)
39 | {
40 | var count = await source.CountAsync();
41 | var items = await source.Skip((pageIndex - 1) * pageSize).Take(pageSize).ToListAsync();
42 | return new PaginatedList(items, count, pageIndex, pageSize);
43 | }
44 | }
45 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Program.cs:
--------------------------------------------------------------------------------
1 | using ContosoUniversity.Data;
2 | using Microsoft.Extensions.DependencyInjection;
3 | using Microsoft.AspNetCore.Hosting;
4 | using Microsoft.Extensions.Hosting;
5 | using Microsoft.Extensions.Logging;
6 | using System;
7 |
8 | namespace ContosoUniversity
9 | {
10 | public class Program
11 | {
12 | public static void Main(string[] args)
13 | {
14 | var host = CreateHostBuilder(args).Build();
15 |
16 | CreateDbIfNotExists(host);
17 |
18 | host.Run();
19 | }
20 |
21 | private static void CreateDbIfNotExists(IHost host)
22 | {
23 | using (var scope = host.Services.CreateScope())
24 | {
25 | var services = scope.ServiceProvider;
26 | try
27 | {
28 | var context = services.GetRequiredService();
29 | DbInitializer.Initialize(context);
30 | }
31 | catch (Exception ex)
32 | {
33 | var logger = services.GetRequiredService>();
34 | logger.LogError(ex, "An error occurred creating the DB.");
35 | }
36 | }
37 | }
38 |
39 | public static IHostBuilder CreateHostBuilder(string[] args) =>
40 | Host.CreateDefaultBuilder(args)
41 | .ConfigureWebHostDefaults(webBuilder =>
42 | {
43 | webBuilder.UseStartup();
44 | });
45 | }
46 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "iisSettings": {
3 | "windowsAuthentication": false,
4 | "anonymousAuthentication": true,
5 | "iisExpress": {
6 | "applicationUrl": "http://localhost:14047",
7 | "sslPort": 44319
8 | }
9 | },
10 | "profiles": {
11 | "IIS Express": {
12 | "commandName": "IISExpress",
13 | "launchBrowser": true,
14 | "environmentVariables": {
15 | "ASPNETCORE_ENVIRONMENT": "Development"
16 | }
17 | },
18 | "ContosoUniversity": {
19 | "commandName": "Project",
20 | "dotnetRunMessages": "true",
21 | "launchBrowser": true,
22 | "applicationUrl": "https://localhost:5001;http://localhost:5000",
23 | "environmentVariables": {
24 | "ASPNETCORE_ENVIRONMENT": "Development"
25 | }
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Courses/Delete.cshtml:
--------------------------------------------------------------------------------
1 | @model ContosoUniversity.Models.Course
2 |
3 | @{
4 | ViewData["Title"] = "Delete";
5 | }
6 |
7 | Delete
8 |
9 | Are you sure you want to delete this?
10 |
11 |
Course
12 |
13 |
14 | -
15 | @Html.DisplayNameFor(model => model.CourseID)
16 |
17 | -
18 | @Html.DisplayFor(model => model.CourseID)
19 |
20 | -
21 | @Html.DisplayNameFor(model => model.Title)
22 |
23 | -
24 | @Html.DisplayFor(model => model.Title)
25 |
26 | -
27 | @Html.DisplayNameFor(model => model.Credits)
28 |
29 | -
30 | @Html.DisplayFor(model => model.Credits)
31 |
32 | -
33 | @Html.DisplayNameFor(model => model.Department)
34 |
35 | -
36 | @Html.DisplayFor(model => model.Department.Name)
37 |
38 |
39 |
40 |
46 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Courses/Details.cshtml:
--------------------------------------------------------------------------------
1 | @model ContosoUniversity.Models.Course
2 |
3 | @{
4 | ViewData["Title"] = "Details";
5 | }
6 |
7 | Details
8 |
9 |
10 |
Course
11 |
12 |
13 | -
14 | @Html.DisplayNameFor(model => model.Title)
15 |
16 | -
17 | @Html.DisplayFor(model => model.Title)
18 |
19 | -
20 | @Html.DisplayNameFor(model => model.Credits)
21 |
22 | -
23 | @Html.DisplayFor(model => model.Credits)
24 |
25 | -
26 | @Html.DisplayNameFor(model => model.Department)
27 |
28 | -
29 | @Html.DisplayFor(model => model.Department.DepartmentID)
30 |
31 |
32 |
33 |
37 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Courses/Index.cshtml:
--------------------------------------------------------------------------------
1 | @model IEnumerable
2 |
3 | @{
4 | ViewData["Title"] = "Courses";
5 | }
6 |
7 | Courses
8 |
9 |
10 | Create New
11 |
12 |
13 |
14 |
15 |
16 | @Html.DisplayNameFor(model => model.CourseID)
17 | |
18 |
19 | @Html.DisplayNameFor(model => model.Title)
20 | |
21 |
22 | @Html.DisplayNameFor(model => model.Credits)
23 | |
24 |
25 | @Html.DisplayNameFor(model => model.Department)
26 | |
27 | |
28 |
29 |
30 |
31 | @foreach (var item in Model)
32 | {
33 |
34 |
35 | @Html.DisplayFor(modelItem => item.CourseID)
36 | |
37 |
38 | @Html.DisplayFor(modelItem => item.Title)
39 | |
40 |
41 | @Html.DisplayFor(modelItem => item.Credits)
42 | |
43 |
44 | @Html.DisplayFor(modelItem => item.Department.Name)
45 | |
46 |
47 | Edit |
48 | Details |
49 | Delete
50 | |
51 |
52 | }
53 |
54 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Departments/Create.cshtml:
--------------------------------------------------------------------------------
1 | @model ContosoUniversity.Models.Department
2 |
3 | @{
4 | ViewData["Title"] = "Create";
5 | }
6 |
7 | Create
8 |
9 | Department
10 |
11 |
40 |
41 |
44 |
45 | @section Scripts {
46 | @{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
47 | }
48 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Departments/Delete.cshtml:
--------------------------------------------------------------------------------
1 | @model ContosoUniversity.Models.Department
2 |
3 | @{
4 | ViewData["Title"] = "Delete";
5 | }
6 |
7 | Delete
8 |
9 | Are you sure you want to delete this?
10 |
11 |
Department
12 |
13 |
14 | -
15 | @Html.DisplayNameFor(model => model.Name)
16 |
17 | -
18 | @Html.DisplayFor(model => model.Name)
19 |
20 | -
21 | @Html.DisplayNameFor(model => model.Budget)
22 |
23 | -
24 | @Html.DisplayFor(model => model.Budget)
25 |
26 | -
27 | @Html.DisplayNameFor(model => model.StartDate)
28 |
29 | -
30 | @Html.DisplayFor(model => model.StartDate)
31 |
32 | -
33 | @Html.DisplayNameFor(model => model.RowVersion)
34 |
35 | -
36 | @Html.DisplayFor(model => model.RowVersion)
37 |
38 | -
39 | @Html.DisplayNameFor(model => model.Administrator)
40 |
41 | -
42 | @Html.DisplayFor(model => model.Administrator.FirstMidName)
43 |
44 |
45 |
46 |
51 |
52 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Departments/Details.cshtml:
--------------------------------------------------------------------------------
1 | @model ContosoUniversity.Models.Department
2 |
3 | @{
4 | ViewData["Title"] = "Details";
5 | }
6 |
7 | Details
8 |
9 |
10 |
Department
11 |
12 |
13 | -
14 | @Html.DisplayNameFor(model => model.Name)
15 |
16 | -
17 | @Html.DisplayFor(model => model.Name)
18 |
19 | -
20 | @Html.DisplayNameFor(model => model.Budget)
21 |
22 | -
23 | @Html.DisplayFor(model => model.Budget)
24 |
25 | -
26 | @Html.DisplayNameFor(model => model.StartDate)
27 |
28 | -
29 | @Html.DisplayFor(model => model.StartDate)
30 |
31 | -
32 | @Html.DisplayNameFor(model => model.RowVersion)
33 |
34 | -
35 | @Html.DisplayFor(model => model.RowVersion)
36 |
37 | -
38 | @Html.DisplayNameFor(model => model.Administrator)
39 |
40 | -
41 | @Html.DisplayFor(model => model.Administrator.FirstMidName)
42 |
43 |
44 |
45 |
49 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Departments/Index.cshtml:
--------------------------------------------------------------------------------
1 | @model IEnumerable
2 |
3 | @{
4 | ViewData["Title"] = "Departments";
5 | }
6 |
7 | Departments
8 |
9 |
10 | Create New
11 |
12 |
13 |
14 |
15 |
16 | @Html.DisplayNameFor(model => model.Name)
17 | |
18 |
19 | @Html.DisplayNameFor(model => model.Budget)
20 | |
21 |
22 | @Html.DisplayNameFor(model => model.StartDate)
23 | |
24 |
25 | @Html.DisplayNameFor(model => model.Administrator)
26 | |
27 | |
28 |
29 |
30 |
31 | @foreach (var item in Model)
32 | {
33 |
34 |
35 | @Html.DisplayFor(modelItem => item.Name)
36 | |
37 |
38 | @Html.DisplayFor(modelItem => item.Budget)
39 | |
40 |
41 | @Html.DisplayFor(modelItem => item.StartDate)
42 | |
43 |
44 | @Html.DisplayFor(modelItem => item.Administrator.FullName)
45 | |
46 |
47 | Edit |
48 | Details |
49 | Delete
50 | |
51 |
52 | }
53 |
54 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Home/About.cshtml:
--------------------------------------------------------------------------------
1 | @model IEnumerable
2 |
3 | @{
4 | ViewData["Title"] = "Student Body Statistics";
5 | }
6 |
7 | Student Body Statistics
8 |
9 |
10 |
11 |
12 | Enrollment Date
13 | |
14 |
15 | Students
16 | |
17 |
18 |
19 | @foreach (var item in Model)
20 | {
21 |
22 |
23 | @Html.DisplayFor(modelItem => item.EnrollmentDate)
24 | |
25 |
26 | @item.StudentCount
27 | |
28 |
29 | }
30 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Home/Index.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | ViewData["Title"] = "Home Page";
3 | }
4 |
5 |
6 |
Contoso University
7 |
8 |
9 |
10 |
Welcome to Contoso University
11 |
12 | Contoso University is a sample application that
13 | demonstrates how to use Entity Framework Core in an
14 | ASP.NET Core MVC web application.
15 |
16 |
17 |
18 |
Build it from scratch
19 |
You can build the application by following the steps in a series of tutorials.
20 |
See the tutorial »
21 |
22 |
27 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Home/Privacy.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | ViewData["Title"] = "Privacy Policy";
3 | }
4 | @ViewData["Title"]
5 |
6 | Use this page to detail your site's privacy policy.
7 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Instructors/Delete.cshtml:
--------------------------------------------------------------------------------
1 | @model ContosoUniversity.Models.Instructor
2 |
3 | @{
4 | ViewData["Title"] = "Delete";
5 | }
6 |
7 | Delete
8 |
9 | Are you sure you want to delete this?
10 |
11 |
Instructor
12 |
13 |
14 | -
15 | @Html.DisplayNameFor(model => model.LastName)
16 |
17 | -
18 | @Html.DisplayFor(model => model.LastName)
19 |
20 | -
21 | @Html.DisplayNameFor(model => model.FirstMidName)
22 |
23 | -
24 | @Html.DisplayFor(model => model.FirstMidName)
25 |
26 | -
27 | @Html.DisplayNameFor(model => model.HireDate)
28 |
29 | -
30 | @Html.DisplayFor(model => model.HireDate)
31 |
32 |
33 |
34 |
39 |
40 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Instructors/Details.cshtml:
--------------------------------------------------------------------------------
1 | @model ContosoUniversity.Models.Instructor
2 |
3 | @{
4 | ViewData["Title"] = "Details";
5 | }
6 |
7 | Details
8 |
9 |
10 |
Instructor
11 |
12 |
13 | -
14 | @Html.DisplayNameFor(model => model.LastName)
15 |
16 | -
17 | @Html.DisplayFor(model => model.LastName)
18 |
19 | -
20 | @Html.DisplayNameFor(model => model.FirstMidName)
21 |
22 | -
23 | @Html.DisplayFor(model => model.FirstMidName)
24 |
25 | -
26 | @Html.DisplayNameFor(model => model.HireDate)
27 |
28 | -
29 | @Html.DisplayFor(model => model.HireDate)
30 |
31 |
32 |
33 |
37 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Shared/Error.cshtml:
--------------------------------------------------------------------------------
1 | @model ErrorViewModel
2 | @{
3 | ViewData["Title"] = "Error";
4 | }
5 |
6 | Error.
7 | An error occurred while processing your request.
8 |
9 | @if (Model.ShowRequestId)
10 | {
11 |
12 | Request ID: @Model.RequestId
13 |
14 | }
15 |
16 | Development Mode
17 |
18 | Swapping to Development environment will display more detailed information about the error that occurred.
19 |
20 |
21 | The Development environment shouldn't be enabled for deployed applications.
22 | It can result in displaying sensitive information from exceptions to end users.
23 | For local debugging, enable the Development environment by setting the ASPNETCORE_ENVIRONMENT environment variable to Development
24 | and restarting the app.
25 |
26 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Shared/_ValidationScriptsPartial.cshtml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Students/Create.cshtml:
--------------------------------------------------------------------------------
1 | @model ContosoUniversity.Models.Student
2 |
3 | @{
4 | ViewData["Title"] = "Create";
5 | }
6 |
7 | Create
8 |
9 | Student
10 |
11 |
36 |
37 |
40 |
41 | @section Scripts {
42 | @{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
43 | }
44 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Students/Delete.cshtml:
--------------------------------------------------------------------------------
1 | @model ContosoUniversity.Models.Student
2 |
3 | @{
4 | ViewData["Title"] = "Delete";
5 | }
6 |
7 | Delete
8 | @ViewData["ErrorMessage"]
9 | Are you sure you want to delete this?
10 |
11 |
Student
12 |
13 |
14 | -
15 | @Html.DisplayNameFor(model => model.LastName)
16 |
17 | -
18 | @Html.DisplayFor(model => model.LastName)
19 |
20 | -
21 | @Html.DisplayNameFor(model => model.FirstMidName)
22 |
23 | -
24 | @Html.DisplayFor(model => model.FirstMidName)
25 |
26 | -
27 | @Html.DisplayNameFor(model => model.EnrollmentDate)
28 |
29 | -
30 | @Html.DisplayFor(model => model.EnrollmentDate)
31 |
32 |
33 |
34 |
39 |
40 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/Students/Edit.cshtml:
--------------------------------------------------------------------------------
1 | @model ContosoUniversity.Models.Student
2 |
3 | @{
4 | ViewData["Title"] = "Edit";
5 | }
6 |
7 | Edit
8 |
9 | Student
10 |
11 |
37 |
38 |
41 |
42 | @section Scripts {
43 | @{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
44 | }
45 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/_ViewImports.cshtml:
--------------------------------------------------------------------------------
1 | @using ContosoUniversity
2 | @using ContosoUniversity.Models
3 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
4 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/Views/_ViewStart.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | Layout = "_Layout";
3 | }
4 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "ConnectionStrings": {
3 | "DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=ContosoUniversity3;Trusted_Connection=True;MultipleActiveResultSets=true"
4 | },
5 | "Logging": {
6 | "LogLevel": {
7 | "Default": "Information",
8 | "Microsoft": "Warning",
9 | "Microsoft.Hosting.Lifetime": "Information"
10 | }
11 | },
12 | "AllowedHosts": "*"
13 | }
14 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ContosoUniversity.Views.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ContosoUniversity.Views.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ContosoUniversity.Views.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ContosoUniversity.Views.pdb
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ContosoUniversity.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ContosoUniversity.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ContosoUniversity.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ContosoUniversity.exe
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ContosoUniversity.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ContosoUniversity.pdb
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ContosoUniversity.runtimeconfig.dev.json:
--------------------------------------------------------------------------------
1 | {
2 | "runtimeOptions": {
3 | "additionalProbingPaths": [
4 | "C:\\Users\\acmin\\.dotnet\\store\\|arch|\\|tfm|",
5 | "C:\\Users\\acmin\\.nuget\\packages"
6 | ]
7 | }
8 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ContosoUniversity.runtimeconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "runtimeOptions": {
3 | "tfm": "net5.0",
4 | "framework": {
5 | "name": "Microsoft.AspNetCore.App",
6 | "version": "5.0.0"
7 | },
8 | "configProperties": {
9 | "System.GC.Server": true,
10 | "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
11 | }
12 | }
13 | }
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Humanizer.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Humanizer.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.AspNetCore.Razor.Language.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.AspNetCore.Razor.Language.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.Bcl.AsyncInterfaces.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.Bcl.AsyncInterfaces.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.CodeAnalysis.CSharp.Workspaces.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.CodeAnalysis.CSharp.Workspaces.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.CodeAnalysis.CSharp.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.CodeAnalysis.CSharp.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.CodeAnalysis.Razor.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.CodeAnalysis.Razor.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.CodeAnalysis.Workspaces.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.CodeAnalysis.Workspaces.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.CodeAnalysis.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.CodeAnalysis.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.Data.SqlClient.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.Data.SqlClient.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.EntityFrameworkCore.Abstractions.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.EntityFrameworkCore.Abstractions.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.EntityFrameworkCore.Design.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.EntityFrameworkCore.Design.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.EntityFrameworkCore.Relational.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.EntityFrameworkCore.Relational.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.EntityFrameworkCore.SqlServer.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.EntityFrameworkCore.SqlServer.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.EntityFrameworkCore.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.EntityFrameworkCore.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.Extensions.DependencyInjection.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.Extensions.DependencyInjection.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.Identity.Client.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.Identity.Client.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.IdentityModel.JsonWebTokens.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.IdentityModel.JsonWebTokens.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.IdentityModel.Logging.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.IdentityModel.Logging.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.IdentityModel.Protocols.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.IdentityModel.Protocols.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.IdentityModel.Tokens.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.IdentityModel.Tokens.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.VisualStudio.Web.CodeGeneration.Contracts.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.VisualStudio.Web.CodeGeneration.Contracts.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.VisualStudio.Web.CodeGeneration.Core.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.VisualStudio.Web.CodeGeneration.Core.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.VisualStudio.Web.CodeGeneration.Templating.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.VisualStudio.Web.CodeGeneration.Templating.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.VisualStudio.Web.CodeGeneration.Utils.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.VisualStudio.Web.CodeGeneration.Utils.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.VisualStudio.Web.CodeGeneration.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.VisualStudio.Web.CodeGeneration.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.VisualStudio.Web.CodeGenerators.Mvc.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Microsoft.VisualStudio.Web.CodeGenerators.Mvc.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Newtonsoft.Json.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/Newtonsoft.Json.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Composition.AttributedModel.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Composition.AttributedModel.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Composition.Convention.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Composition.Convention.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Composition.Hosting.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Composition.Hosting.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Composition.Runtime.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Composition.Runtime.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Composition.TypedParts.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Composition.TypedParts.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Configuration.ConfigurationManager.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Configuration.ConfigurationManager.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Diagnostics.DiagnosticSource.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Diagnostics.DiagnosticSource.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.IdentityModel.Tokens.Jwt.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.IdentityModel.Tokens.Jwt.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Runtime.Caching.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Runtime.Caching.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Security.Cryptography.ProtectedData.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/System.Security.Cryptography.ProtectedData.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "ConnectionStrings": {
3 | "DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=ContosoUniversity3;Trusted_Connection=True;MultipleActiveResultSets=true"
4 | },
5 | "Logging": {
6 | "LogLevel": {
7 | "Default": "Information",
8 | "Microsoft": "Warning",
9 | "Microsoft.Hosting.Lifetime": "Information"
10 | }
11 | },
12 | "AllowedHosts": "*"
13 | }
14 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/cs/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/cs/Microsoft.CodeAnalysis.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/cs/Microsoft.CodeAnalysis.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/cs/Microsoft.CodeAnalysis.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/de/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/de/Microsoft.CodeAnalysis.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/de/Microsoft.CodeAnalysis.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/de/Microsoft.CodeAnalysis.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/de/Microsoft.CodeAnalysis.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/dotnet-aspnet-codegenerator-design.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/dotnet-aspnet-codegenerator-design.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/es/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/es/Microsoft.CodeAnalysis.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/es/Microsoft.CodeAnalysis.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/es/Microsoft.CodeAnalysis.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/es/Microsoft.CodeAnalysis.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/fr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/fr/Microsoft.CodeAnalysis.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/fr/Microsoft.CodeAnalysis.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/fr/Microsoft.CodeAnalysis.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/it/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/it/Microsoft.CodeAnalysis.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/it/Microsoft.CodeAnalysis.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/it/Microsoft.CodeAnalysis.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/it/Microsoft.CodeAnalysis.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ja/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ja/Microsoft.CodeAnalysis.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ja/Microsoft.CodeAnalysis.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ja/Microsoft.CodeAnalysis.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ko/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ko/Microsoft.CodeAnalysis.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ko/Microsoft.CodeAnalysis.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ko/Microsoft.CodeAnalysis.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pl/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pl/Microsoft.CodeAnalysis.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pl/Microsoft.CodeAnalysis.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pl/Microsoft.CodeAnalysis.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pt-BR/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pt-BR/Microsoft.CodeAnalysis.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pt-BR/Microsoft.CodeAnalysis.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/pt-BR/Microsoft.CodeAnalysis.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ref/ContosoUniversity.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ref/ContosoUniversity.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ru/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ru/Microsoft.CodeAnalysis.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ru/Microsoft.CodeAnalysis.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/ru/Microsoft.CodeAnalysis.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/unix/lib/netcoreapp3.1/Microsoft.Data.SqlClient.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/unix/lib/netcoreapp3.1/Microsoft.Data.SqlClient.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-arm/lib/net5.0/dotnet-aspnet-codegenerator-design.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-arm/lib/net5.0/dotnet-aspnet-codegenerator-design.exe
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-arm/native/Microsoft.Data.SqlClient.SNI.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-arm/native/Microsoft.Data.SqlClient.SNI.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-arm/native/Microsoft.Data.SqlClient.SNI.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-arm/native/Microsoft.Data.SqlClient.SNI.pdb
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-arm64/lib/net5.0/dotnet-aspnet-codegenerator-design.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-arm64/lib/net5.0/dotnet-aspnet-codegenerator-design.exe
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-arm64/native/Microsoft.Data.SqlClient.SNI.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-arm64/native/Microsoft.Data.SqlClient.SNI.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-arm64/native/Microsoft.Data.SqlClient.SNI.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-arm64/native/Microsoft.Data.SqlClient.SNI.pdb
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-x64/native/Microsoft.Data.SqlClient.SNI.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-x64/native/Microsoft.Data.SqlClient.SNI.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-x64/native/Microsoft.Data.SqlClient.SNI.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-x64/native/Microsoft.Data.SqlClient.SNI.pdb
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-x86/native/Microsoft.Data.SqlClient.SNI.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-x86/native/Microsoft.Data.SqlClient.SNI.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-x86/native/Microsoft.Data.SqlClient.SNI.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win-x86/native/Microsoft.Data.SqlClient.SNI.pdb
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win/lib/netcoreapp3.1/Microsoft.Data.SqlClient.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win/lib/netcoreapp3.1/Microsoft.Data.SqlClient.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win/lib/netstandard2.0/System.Runtime.Caching.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win/lib/netstandard2.0/System.Runtime.Caching.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/tr/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/tr/Microsoft.CodeAnalysis.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/tr/Microsoft.CodeAnalysis.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/tr/Microsoft.CodeAnalysis.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hans/Microsoft.CodeAnalysis.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hant/Microsoft.CodeAnalysis.Workspaces.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/bin/Debug/net5.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/ContosoUniversity.csproj.EntityFrameworkCore.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/ContosoUniversity.csproj.nuget.g.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
5 |
6 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs:
--------------------------------------------------------------------------------
1 | //
2 | using System;
3 | using System.Reflection;
4 | [assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v5.0", FrameworkDisplayName = "")]
5 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.42000
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | using System;
12 | using System.Reflection;
13 |
14 | [assembly: System.Reflection.AssemblyCompanyAttribute("ContosoUniversity")]
15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
18 | [assembly: System.Reflection.AssemblyProductAttribute("ContosoUniversity")]
19 | [assembly: System.Reflection.AssemblyTitleAttribute("ContosoUniversity")]
20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
21 |
22 | // Generated by the MSBuild WriteCodeFragment class.
23 |
24 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.AssemblyInfoInputs.cache:
--------------------------------------------------------------------------------
1 | 90e062877957355c45174c832d789c510b0ca5a3
2 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.GeneratedMSBuildEditorConfig.editorconfig:
--------------------------------------------------------------------------------
1 | is_global = true
2 | build_property.TargetFramework = net5.0
3 | build_property.TargetPlatformMinVersion =
4 | build_property.UsingMicrosoftNETSdkWeb = true
5 | build_property.ProjectTypeGuids =
6 | build_property.PublishSingleFile =
7 | build_property.IncludeAllContentForSelfExtract =
8 | build_property._SupportedPlatformList = Android,iOS,Linux,macOS,Windows
9 | build_property.RootNamespace = ContosoUniversity
10 | build_property.ProjectDir = F:\project\JimmyCodingExamples\Concurrency\ContosoUniversity\ContosoUniversity\
11 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.MvcApplicationPartsAssemblyInfo.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.MvcApplicationPartsAssemblyInfo.cache
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.RazorAssemblyInfo.cache:
--------------------------------------------------------------------------------
1 | fe4d238143ab1fd15ad34a3e44e823c66913636c
2 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.RazorAssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.42000
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | using System;
12 | using System.Reflection;
13 |
14 | [assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.RelatedAssemblyAttribute("ContosoUniversity.Views")]
15 |
16 | // Generated by the MSBuild WriteCodeFragment class.
17 |
18 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.RazorCoreGenerate.cache:
--------------------------------------------------------------------------------
1 | cb25402062b72c967e41db68a1ca7ffbde00c39d
2 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.RazorTargetAssemblyInfo.cache:
--------------------------------------------------------------------------------
1 | ab253aa6504280be8e46e428e5b132a10cf287b0
2 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.RazorTargetAssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.42000
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | using System;
12 | using System.Reflection;
13 |
14 | [assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ProvideApplicationPartFactoryAttribute("Microsoft.AspNetCore.Mvc.ApplicationParts.CompiledRazorAssemblyApplicationPartFac" +
15 | "tory, Microsoft.AspNetCore.Mvc.Razor")]
16 | [assembly: System.Reflection.AssemblyCompanyAttribute("ContosoUniversity")]
17 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
18 | [assembly: System.Reflection.AssemblyProductAttribute("ContosoUniversity")]
19 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
20 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
21 | [assembly: System.Reflection.AssemblyTitleAttribute("ContosoUniversity.Views")]
22 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
23 |
24 | // Generated by the MSBuild WriteCodeFragment class.
25 |
26 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.TagHelpers.input.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.TagHelpers.input.cache
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.Views.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.Views.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.Views.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.Views.pdb
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.assets.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.assets.cache
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.csproj.AssemblyReference.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.csproj.AssemblyReference.cache
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.csproj.CopyComplete:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.csproj.CopyComplete
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | 0430daf07f98c9606853b128e6e38f24b4b6e064
2 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.genruntimeconfig.cache:
--------------------------------------------------------------------------------
1 | 7f6d5f87f91d07218055a7d5234303b390306587
2 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ContosoUniversity.pdb
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/apphost.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/apphost.exe
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ref/ContosoUniversity.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/ref/ContosoUniversity.dll
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/staticwebassets/ContosoUniversity.StaticWebAssets.Manifest.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/staticwebassets/ContosoUniversity.StaticWebAssets.Manifest.cache
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/obj/Debug/net5.0/staticwebassets/ContosoUniversity.StaticWebAssets.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/wwwroot/css/site.css:
--------------------------------------------------------------------------------
1 | /* Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
2 | for details on configuring this project to bundle and minify static web assets. */
3 |
4 | a.navbar-brand {
5 | white-space: normal;
6 | text-align: center;
7 | word-break: break-all;
8 | }
9 |
10 | /* Provide sufficient contrast against white background */
11 | a {
12 | color: #0366d6;
13 | }
14 |
15 | .btn-primary {
16 | color: #fff;
17 | background-color: #1b6ec2;
18 | border-color: #1861ac;
19 | }
20 |
21 | .nav-pills .nav-link.active, .nav-pills .show > .nav-link {
22 | color: #fff;
23 | background-color: #1b6ec2;
24 | border-color: #1861ac;
25 | }
26 |
27 | /* Sticky footer styles
28 | -------------------------------------------------- */
29 | html {
30 | font-size: 14px;
31 | }
32 | @media (min-width: 768px) {
33 | html {
34 | font-size: 16px;
35 | }
36 | }
37 |
38 | .border-top {
39 | border-top: 1px solid #e5e5e5;
40 | }
41 | .border-bottom {
42 | border-bottom: 1px solid #e5e5e5;
43 | }
44 |
45 | .box-shadow {
46 | box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
47 | }
48 |
49 | button.accept-policy {
50 | font-size: 1rem;
51 | line-height: inherit;
52 | }
53 |
54 | /* Sticky footer styles
55 | -------------------------------------------------- */
56 | html {
57 | position: relative;
58 | min-height: 100%;
59 | }
60 |
61 | body {
62 | /* Margin bottom by footer height */
63 | margin-bottom: 60px;
64 | }
65 | .footer {
66 | position: absolute;
67 | bottom: 0;
68 | width: 100%;
69 | white-space: nowrap;
70 | line-height: 60px; /* Vertically center the text there */
71 | }
72 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Concurrency/ContosoUniversity/ContosoUniversity/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/wwwroot/js/site.js:
--------------------------------------------------------------------------------
1 | // Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
2 | // for details on configuring this project to bundle and minify static web assets.
3 |
4 | // Write your JavaScript code.
5 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/wwwroot/lib/bootstrap/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2011-2018 Twitter, Inc.
4 | Copyright (c) 2011-2018 The Bootstrap Authors
5 |
6 | Permission is hereby granted, free of charge, to any person obtaining a copy
7 | of this software and associated documentation files (the "Software"), to deal
8 | in the Software without restriction, including without limitation the rights
9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | copies of the Software, and to permit persons to whom the Software is
11 | furnished to do so, subject to the following conditions:
12 |
13 | The above copyright notice and this permission notice shall be included in
14 | all copies or substantial portions of the Software.
15 |
16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 | THE SOFTWARE.
23 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/wwwroot/lib/jquery-validation-unobtrusive/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) .NET Foundation. All rights reserved.
2 |
3 | Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4 | these files except in compliance with the License. You may obtain a copy of the
5 | License at
6 |
7 | http://www.apache.org/licenses/LICENSE-2.0
8 |
9 | Unless required by applicable law or agreed to in writing, software distributed
10 | under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
11 | CONDITIONS OF ANY KIND, either express or implied. See the License for the
12 | specific language governing permissions and limitations under the License.
13 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/wwwroot/lib/jquery-validation/LICENSE.md:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 | =====================
3 |
4 | Copyright Jörn Zaefferer
5 |
6 | Permission is hereby granted, free of charge, to any person obtaining a copy
7 | of this software and associated documentation files (the "Software"), to deal
8 | in the Software without restriction, including without limitation the rights
9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | copies of the Software, and to permit persons to whom the Software is
11 | furnished to do so, subject to the following conditions:
12 |
13 | The above copyright notice and this permission notice shall be included in
14 | all copies or substantial portions of the Software.
15 |
16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 | THE SOFTWARE.
23 |
--------------------------------------------------------------------------------
/Concurrency/ContosoUniversity/ContosoUniversity/wwwroot/lib/jquery/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright JS Foundation and other contributors, https://js.foundation/
2 |
3 | This software consists of voluntary contributions made by many
4 | individuals. For exact contribution history, see the revision history
5 | available at https://github.com/jquery/jquery
6 |
7 | The following license applies to all parts of this software except as
8 | documented below:
9 |
10 | ====
11 |
12 | Permission is hereby granted, free of charge, to any person obtaining
13 | a copy of this software and associated documentation files (the
14 | "Software"), to deal in the Software without restriction, including
15 | without limitation the rights to use, copy, modify, merge, publish,
16 | distribute, sublicense, and/or sell copies of the Software, and to
17 | permit persons to whom the Software is furnished to do so, subject to
18 | the following conditions:
19 |
20 | The above copyright notice and this permission notice shall be
21 | included in all copies or substantial portions of the Software.
22 |
23 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
24 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
25 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
26 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
27 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
28 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
29 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30 |
31 | ====
32 |
33 | All files located in the node_modules and external directories are
34 | externally maintained libraries used by this software which have their
35 | own licenses; we recommend you read them, as their terms may differ from
36 | the terms above.
37 |
--------------------------------------------------------------------------------
/Container/DockerExample/.dockerignore:
--------------------------------------------------------------------------------
1 | **/.classpath
2 | **/.dockerignore
3 | **/.env
4 | **/.git
5 | **/.gitignore
6 | **/.project
7 | **/.settings
8 | **/.toolstarget
9 | **/.vs
10 | **/.vscode
11 | **/*.*proj.user
12 | **/*.dbmdl
13 | **/*.jfm
14 | **/azds.yaml
15 | **/bin
16 | **/charts
17 | **/docker-compose*
18 | **/compose*
19 | **/Dockerfile*
20 | **/node_modules
21 | **/npm-debug.log
22 | **/obj
23 | **/secrets.dev.yaml
24 | **/values.dev.yaml
25 | README.md
26 |
--------------------------------------------------------------------------------
/Container/DockerExample/Data/ApplicationDbContext.cs:
--------------------------------------------------------------------------------
1 | using DockerExampleWithSQL.Models;
2 | using Microsoft.EntityFrameworkCore;
3 |
4 | namespace DockerExampleWithSQL.Data
5 | {
6 | public class ApplicationDbContext : DbContext
7 | {
8 | public DbSet Users {get;set;}
9 |
10 | public ApplicationDbContext(DbContextOptions options) : base(options)
11 | {
12 |
13 | }
14 | }
15 | }
--------------------------------------------------------------------------------
/Container/DockerExample/DockerExampleWithSQL.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | net5.0
4 |
5 |
6 |
7 |
8 | runtime; build; native; contentfiles; analyzers; buildtransitive
9 | all
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/Container/DockerExample/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM mcr.microsoft.com/dotnet/aspnet:5.0 AS base
2 | WORKDIR /app
3 | EXPOSE 80
4 |
5 | ENV ASPNETCORE_URLS=http://+:80
6 |
7 | FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build
8 | WORKDIR /src
9 | COPY ["DockerExampleWithSQL.csproj", "./"]
10 | RUN dotnet restore "DockerExampleWithSQL.csproj"
11 | COPY . .
12 | WORKDIR "/src/."
13 | RUN dotnet build "DockerExampleWithSQL.csproj" -c Release -o /app/build
14 |
15 | FROM build AS publish
16 | RUN dotnet publish "DockerExampleWithSQL.csproj" -c Release -o /app/publish
17 |
18 | FROM base AS final
19 | WORKDIR /app
20 | COPY --from=publish /app/publish .
21 | ENTRYPOINT ["dotnet", "DockerExampleWithSQL.dll"]
22 |
--------------------------------------------------------------------------------
/Container/DockerExample/Migrations/20210114225834_initial migration.Designer.cs:
--------------------------------------------------------------------------------
1 | //
2 | using DockerExampleWithSQL.Data;
3 | using Microsoft.EntityFrameworkCore;
4 | using Microsoft.EntityFrameworkCore.Infrastructure;
5 | using Microsoft.EntityFrameworkCore.Metadata;
6 | using Microsoft.EntityFrameworkCore.Migrations;
7 | using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
8 |
9 | namespace DockerExampleWithSQL.Migrations
10 | {
11 | [DbContext(typeof(ApplicationDbContext))]
12 | [Migration("20210114225834_initial migration")]
13 | partial class initialmigration
14 | {
15 | protected override void BuildTargetModel(ModelBuilder modelBuilder)
16 | {
17 | #pragma warning disable 612, 618
18 | modelBuilder
19 | .UseIdentityColumns()
20 | .HasAnnotation("Relational:MaxIdentifierLength", 128)
21 | .HasAnnotation("ProductVersion", "5.0.2");
22 |
23 | modelBuilder.Entity("DockerExampleWithSQL.Models.User", b =>
24 | {
25 | b.Property("Id")
26 | .ValueGeneratedOnAdd()
27 | .HasColumnType("int")
28 | .UseIdentityColumn();
29 |
30 | b.Property("Name")
31 | .HasColumnType("nvarchar(max)");
32 |
33 | b.HasKey("Id");
34 |
35 | b.ToTable("Users");
36 | });
37 | #pragma warning restore 612, 618
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/Container/DockerExample/Migrations/20210114225834_initial migration.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore.Migrations;
2 |
3 | namespace DockerExampleWithSQL.Migrations
4 | {
5 | public partial class initialmigration : Migration
6 | {
7 | protected override void Up(MigrationBuilder migrationBuilder)
8 | {
9 | migrationBuilder.CreateTable(
10 | name: "Users",
11 | columns: table => new
12 | {
13 | Id = table.Column(type: "int", nullable: false)
14 | .Annotation("SqlServer:Identity", "1, 1"),
15 | Name = table.Column(type: "nvarchar(max)", nullable: true)
16 | },
17 | constraints: table =>
18 | {
19 | table.PrimaryKey("PK_Users", x => x.Id);
20 | });
21 | }
22 |
23 | protected override void Down(MigrationBuilder migrationBuilder)
24 | {
25 | migrationBuilder.DropTable(
26 | name: "Users");
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/Container/DockerExample/Migrations/ApplicationDbContextModelSnapshot.cs:
--------------------------------------------------------------------------------
1 | //
2 | using DockerExampleWithSQL.Data;
3 | using Microsoft.EntityFrameworkCore;
4 | using Microsoft.EntityFrameworkCore.Infrastructure;
5 | using Microsoft.EntityFrameworkCore.Metadata;
6 | using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
7 |
8 | namespace DockerExampleWithSQL.Migrations
9 | {
10 | [DbContext(typeof(ApplicationDbContext))]
11 | partial class ApplicationDbContextModelSnapshot : ModelSnapshot
12 | {
13 | protected override void BuildModel(ModelBuilder modelBuilder)
14 | {
15 | #pragma warning disable 612, 618
16 | modelBuilder
17 | .UseIdentityColumns()
18 | .HasAnnotation("Relational:MaxIdentifierLength", 128)
19 | .HasAnnotation("ProductVersion", "5.0.2");
20 |
21 | modelBuilder.Entity("DockerExampleWithSQL.Models.User", b =>
22 | {
23 | b.Property("Id")
24 | .ValueGeneratedOnAdd()
25 | .HasColumnType("int")
26 | .UseIdentityColumn();
27 |
28 | b.Property("Name")
29 | .HasColumnType("nvarchar(max)");
30 |
31 | b.HasKey("Id");
32 |
33 | b.ToTable("Users");
34 | });
35 | #pragma warning restore 612, 618
36 | }
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/Container/DockerExample/Models/ErrorViewModel.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace DockerExampleWithSQL.Models
4 | {
5 | public class ErrorViewModel
6 | {
7 | public string RequestId { get; set; }
8 |
9 | public bool ShowRequestId => !string.IsNullOrEmpty(RequestId);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Container/DockerExample/Models/User.cs:
--------------------------------------------------------------------------------
1 | namespace DockerExampleWithSQL.Models
2 | {
3 | public class User
4 | {
5 | public int Id { get; set; }
6 | public string Name { get; set; }
7 | }
8 | }
--------------------------------------------------------------------------------
/Container/DockerExample/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Threading.Tasks;
5 | using Microsoft.AspNetCore.Hosting;
6 | using Microsoft.Extensions.Configuration;
7 | using Microsoft.Extensions.Hosting;
8 | using Microsoft.Extensions.Logging;
9 |
10 | namespace DockerExampleWithSQL
11 | {
12 | public class Program
13 | {
14 | public static void Main(string[] args)
15 | {
16 | CreateHostBuilder(args).Build().Run();
17 | }
18 |
19 | public static IHostBuilder CreateHostBuilder(string[] args) =>
20 | Host.CreateDefaultBuilder(args)
21 | .ConfigureWebHostDefaults(webBuilder =>
22 | {
23 | webBuilder.UseUrls("http://*:80");
24 | webBuilder.UseStartup();
25 | });
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/Container/DockerExample/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "iisSettings": {
3 | "windowsAuthentication": false,
4 | "anonymousAuthentication": true,
5 | "iisExpress": {
6 | "applicationUrl": "http://localhost:62099",
7 | "sslPort": 44385
8 | }
9 | },
10 | "profiles": {
11 | "IIS Express": {
12 | "commandName": "IISExpress",
13 | "launchBrowser": true,
14 | "environmentVariables": {
15 | "ASPNETCORE_ENVIRONMENT": "Development"
16 | }
17 | },
18 | "DockerExampleWithSQL": {
19 | "commandName": "Project",
20 | "dotnetRunMessages": "true",
21 | "launchBrowser": true,
22 | "applicationUrl": "https://localhost:5001;http://localhost:5000",
23 | "environmentVariables": {
24 | "ASPNETCORE_ENVIRONMENT": "Development"
25 | }
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/Container/DockerExample/Services/DatabaseManagementService.cs:
--------------------------------------------------------------------------------
1 | using DockerExampleWithSQL.Data;
2 | using Microsoft.AspNetCore.Builder;
3 | using Microsoft.EntityFrameworkCore;
4 | using Microsoft.Extensions.DependencyInjection;
5 |
6 | namespace DockerExampleWithSQL.Services
7 | {
8 | public static class DatabaseManagementService
9 | {
10 | // Getting the scope of our database context
11 | public static void MigrationInitialisation(IApplicationBuilder app)
12 | {
13 | using (var serviceScope = app.ApplicationServices.CreateScope())
14 | {
15 | // Takes all of our migrations files and apply them against the database in case they are not implemented
16 | serviceScope.ServiceProvider.GetService().Database.Migrate();
17 | }
18 | }
19 | }
20 | }
--------------------------------------------------------------------------------
/Container/DockerExample/Views/Home/Create.cshtml:
--------------------------------------------------------------------------------
1 | @model DockerExampleWithSQL.Models.User
2 |
3 |
--------------------------------------------------------------------------------
/Container/DockerExample/Views/Home/Index.cshtml:
--------------------------------------------------------------------------------
1 | @model List
2 | @{
3 | ViewData["Title"] = "Home Page";
4 | }
5 |
6 | AddUser
7 |
8 |
9 |
10 |
11 |
12 | @foreach (var item in Model)
13 | {
14 | - @item.Name
15 | }
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Container/DockerExample/Views/Home/Privacy.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | ViewData["Title"] = "Privacy Policy";
3 | }
4 | @ViewData["Title"]
5 |
6 | Use this page to detail your site's privacy policy.
7 |
--------------------------------------------------------------------------------
/Container/DockerExample/Views/Shared/Error.cshtml:
--------------------------------------------------------------------------------
1 | @model ErrorViewModel
2 | @{
3 | ViewData["Title"] = "Error";
4 | }
5 |
6 | Error.
7 | An error occurred while processing your request.
8 |
9 | @if (Model.ShowRequestId)
10 | {
11 |
12 | Request ID: @Model.RequestId
13 |
14 | }
15 |
16 | Development Mode
17 |
18 | Swapping to Development environment will display more detailed information about the error that occurred.
19 |
20 |
21 | The Development environment shouldn't be enabled for deployed applications.
22 | It can result in displaying sensitive information from exceptions to end users.
23 | For local debugging, enable the Development environment by setting the ASPNETCORE_ENVIRONMENT environment variable to Development
24 | and restarting the app.
25 |
26 |
--------------------------------------------------------------------------------
/Container/DockerExample/Views/Shared/_ValidationScriptsPartial.cshtml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/Container/DockerExample/Views/_ViewImports.cshtml:
--------------------------------------------------------------------------------
1 | @using DockerExampleWithSQL
2 | @using DockerExampleWithSQL.Models
3 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
4 |
--------------------------------------------------------------------------------
/Container/DockerExample/Views/_ViewStart.cshtml:
--------------------------------------------------------------------------------
1 | @{
2 | Layout = "_Layout";
3 | }
4 |
--------------------------------------------------------------------------------
/Container/DockerExample/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Container/DockerExample/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft": "Warning",
6 | "Microsoft.Hosting.Lifetime": "Information"
7 | }
8 | },
9 | "AllowedHosts": "*"
10 | }
11 |
--------------------------------------------------------------------------------
/Container/DockerExample/docker-compose.debug.yml:
--------------------------------------------------------------------------------
1 | # Please refer https://aka.ms/HTTPSinContainer on how to setup an https developer certificate for your ASP .NET Core service.
2 |
3 | version: '3.4'
4 |
5 | services:
6 | dockerexamplewithsql:
7 | image: dockerexamplewithsql
8 | build:
9 | context: .
10 | dockerfile: ./Dockerfile
11 | ports:
12 | - 5000:5000
13 | environment:
14 | - ASPNETCORE_ENVIRONMENT=Development
15 | volumes:
16 | - ~/.vsdbg:c:\remote_debugger:rw
17 |
--------------------------------------------------------------------------------
/Container/DockerExample/docker-compose.yml:
--------------------------------------------------------------------------------
1 | # Please refer https://aka.ms/HTTPSinContainer on how to setup an https developer certificate for your ASP .NET Core service.
2 |
3 | version: '3.4'
4 |
5 | services:
6 | dockerexamplewithsql:
7 | image: dockerexamplewithsql
8 | build:
9 | context: .
10 | dockerfile: ./Dockerfile
11 | environment:
12 | DbServer: "ms-sql-server"
13 | DbPort: "1433"
14 | DbUser: "SA"
15 | Password: "1HappyP@ssword"
16 | Database: "userDb"
17 | ports:
18 | - 8090:80
19 | ms-sql-server:
20 | image: mcr.microsoft.com/mssql/server:2017-latest-ubuntu
21 | environment:
22 | ACCEPT_EULA: "Y"
23 | SA_PASSWORD: "1HappyP@ssword"
24 | MSSQL_PID: Express
25 | ports:
26 | - "1433:1433"
27 |
--------------------------------------------------------------------------------
/Container/DockerExample/nuget.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Container/DockerExample/wwwroot/css/site.css:
--------------------------------------------------------------------------------
1 | /* Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
2 | for details on configuring this project to bundle and minify static web assets. */
3 |
4 | a.navbar-brand {
5 | white-space: normal;
6 | text-align: center;
7 | word-break: break-all;
8 | }
9 |
10 | /* Provide sufficient contrast against white background */
11 | a {
12 | color: #0366d6;
13 | }
14 |
15 | .btn-primary {
16 | color: #fff;
17 | background-color: #1b6ec2;
18 | border-color: #1861ac;
19 | }
20 |
21 | .nav-pills .nav-link.active, .nav-pills .show > .nav-link {
22 | color: #fff;
23 | background-color: #1b6ec2;
24 | border-color: #1861ac;
25 | }
26 |
27 | /* Sticky footer styles
28 | -------------------------------------------------- */
29 | html {
30 | font-size: 14px;
31 | }
32 | @media (min-width: 768px) {
33 | html {
34 | font-size: 16px;
35 | }
36 | }
37 |
38 | .border-top {
39 | border-top: 1px solid #e5e5e5;
40 | }
41 | .border-bottom {
42 | border-bottom: 1px solid #e5e5e5;
43 | }
44 |
45 | .box-shadow {
46 | box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
47 | }
48 |
49 | button.accept-policy {
50 | font-size: 1rem;
51 | line-height: inherit;
52 | }
53 |
54 | /* Sticky footer styles
55 | -------------------------------------------------- */
56 | html {
57 | position: relative;
58 | min-height: 100%;
59 | }
60 |
61 | body {
62 | /* Margin bottom by footer height */
63 | margin-bottom: 60px;
64 | }
65 | .footer {
66 | position: absolute;
67 | bottom: 0;
68 | width: 100%;
69 | white-space: nowrap;
70 | line-height: 60px; /* Vertically center the text there */
71 | }
72 |
--------------------------------------------------------------------------------
/Container/DockerExample/wwwroot/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/Container/DockerExample/wwwroot/favicon.ico
--------------------------------------------------------------------------------
/Container/DockerExample/wwwroot/js/site.js:
--------------------------------------------------------------------------------
1 | // Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
2 | // for details on configuring this project to bundle and minify static web assets.
3 |
4 | // Write your JavaScript code.
5 |
--------------------------------------------------------------------------------
/Container/DockerExample/wwwroot/lib/bootstrap/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2011-2018 Twitter, Inc.
4 | Copyright (c) 2011-2018 The Bootstrap Authors
5 |
6 | Permission is hereby granted, free of charge, to any person obtaining a copy
7 | of this software and associated documentation files (the "Software"), to deal
8 | in the Software without restriction, including without limitation the rights
9 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 | copies of the Software, and to permit persons to whom the Software is
11 | furnished to do so, subject to the following conditions:
12 |
13 | The above copyright notice and this permission notice shall be included in
14 | all copies or substantial portions of the Software.
15 |
16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22 | THE SOFTWARE.
23 |
--------------------------------------------------------------------------------
/Container/DockerExample/wwwroot/lib/jquery-validation-unobtrusive/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) .NET Foundation. All rights reserved.
2 |
3 | Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4 | these files except in compliance with the License. You may obtain a copy of the
5 | License at
6 |
7 | http://www.apache.org/licenses/LICENSE-2.0
8 |
9 | Unless required by applicable law or agreed to in writing, software distributed
10 | under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
11 | CONDITIONS OF ANY KIND, either express or implied. See the License for the
12 | specific language governing permissions and limitations under the License.
13 |
--------------------------------------------------------------------------------
/Container/DockerExample/wwwroot/lib/jquery/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright JS Foundation and other contributors, https://js.foundation/
2 |
3 | This software consists of voluntary contributions made by many
4 | individuals. For exact contribution history, see the revision history
5 | available at https://github.com/jquery/jquery
6 |
7 | The following license applies to all parts of this software except as
8 | documented below:
9 |
10 | ====
11 |
12 | Permission is hereby granted, free of charge, to any person obtaining
13 | a copy of this software and associated documentation files (the
14 | "Software"), to deal in the Software without restriction, including
15 | without limitation the rights to use, copy, modify, merge, publish,
16 | distribute, sublicense, and/or sell copies of the Software, and to
17 | permit persons to whom the Software is furnished to do so, subject to
18 | the following conditions:
19 |
20 | The above copyright notice and this permission notice shall be
21 | included in all copies or substantial portions of the Software.
22 |
23 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
24 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
25 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
26 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
27 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
28 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
29 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30 |
31 | ====
32 |
33 | All files located in the node_modules and external directories are
34 | externally maintained libraries used by this software which have their
35 | own licenses; we recommend you read them, as their terms may differ from
36 | the terms above.
37 |
--------------------------------------------------------------------------------
/Container/KubernetesApplication/myapp-configmap.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: ConfigMap
3 | metadata:
4 | name: myapp-configmap
5 | data:
6 | db_server: "sql-service"
7 | db_port: "1433"
8 | database: "userDb"
--------------------------------------------------------------------------------
/Container/KubernetesApplication/myapp.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: apps/v1
2 | kind: Deployment
3 | metadata:
4 | name: myapp
5 | labels:
6 | app: myapp
7 | spec:
8 | replicas: 1
9 | selector:
10 | matchLabels:
11 | app: myapp
12 | template:
13 | metadata:
14 | labels:
15 | app: myapp
16 | spec:
17 | containers:
18 | - name: myapp
19 | image: jimmycoding92/jimmy-coding-example-app:v1
20 | ports:
21 | - containerPort: 80
22 | env:
23 | - name: DbServer
24 | valueFrom:
25 | configMapKeyRef:
26 | name: myapp-configmap
27 | key: db_server
28 | - name: DbPort
29 | valueFrom:
30 | configMapKeyRef:
31 | name: myapp-configmap
32 | key: db_port
33 | - name: DbUser
34 | valueFrom:
35 | secretKeyRef:
36 | name: sql-secret
37 | key: sql-username
38 | - name: Password
39 | valueFrom:
40 | secretKeyRef:
41 | name: sql-secret
42 | key: sql-password
43 | - name: Database
44 | valueFrom:
45 | configMapKeyRef:
46 | name: myapp-configmap
47 | key: database
48 | ---
49 | apiVersion: v1
50 | kind: Service
51 | metadata:
52 | name: myapp-service
53 | spec:
54 | selector:
55 | app: myapp
56 | type: LoadBalancer
57 | ports:
58 | - port: 80
59 | targetPort: 80
60 | nodePort: 30000
61 |
--------------------------------------------------------------------------------
/Container/KubernetesApplication/sql-configmap.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: ConfigMap
3 | metadata:
4 | name: sql-configmap
5 | data:
6 | accept_eula: "Y"
7 | mssql_pid: "Express"
8 |
--------------------------------------------------------------------------------
/Container/KubernetesApplication/sql-secret.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: Secret
3 | metadata:
4 | name: sql-secret
5 | type: Opaque
6 | data:
7 | sql-username: U0E=
8 | sql-password: MUhhcHB5UEBzc3dvcmQ=
9 |
--------------------------------------------------------------------------------
/Container/KubernetesApplication/sql.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: apps/v1
2 | kind: Deployment
3 | metadata:
4 | name: sql-deployment
5 | labels:
6 | app: sql
7 | spec:
8 | replicas: 1
9 | selector:
10 | matchLabels:
11 | app: sql
12 | template:
13 | metadata:
14 | labels:
15 | app: sql
16 | spec:
17 | containers:
18 | - name: sql
19 | image: mcr.microsoft.com/mssql/server:2017-latest-ubuntu
20 | ports:
21 | - containerPort: 1433
22 | env:
23 | - name: ACCEPT_EULA
24 | valueFrom:
25 | configMapKeyRef:
26 | name: sql-configmap
27 | key: accept_eula
28 | - name: SA_PASSWORD
29 | valueFrom:
30 | secretKeyRef:
31 | name: sql-secret
32 | key: sql-password
33 | - name: MSSQL_PID
34 | valueFrom:
35 | configMapKeyRef:
36 | name: sql-configmap
37 | key: mssql_pid
38 | ---
39 | apiVersion: v1
40 | kind: Service
41 | metadata:
42 | name: sql-service
43 | spec:
44 | selector:
45 | app: sql
46 | ports:
47 | - protocol: TCP
48 | port: 1433
49 | targetPort: 1433
50 |
51 |
--------------------------------------------------------------------------------
/Container/Kubernets/CreateK8sLocally.md:
--------------------------------------------------------------------------------
1 | # 创建一个本地kubernetes集群步骤 - Windows
2 |
3 | ## 1. 激活hyper-v
4 | https://docs.microsoft.com/zh-cn/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v
5 |
6 | ## 2. 安装docker desktop
7 | https://docs.docker.com/desktop/windows/install/
8 |
9 | ## 3. 选择一下三者其一的工具来创建kubernetes集群
10 | * docker desktop: https://docs.docker.com/desktop/kubernetes/
11 | * minikube: https://minikube.sigs.k8s.io/docs/start/
12 | * kind: https://kind.sigs.k8s.io/docs/user/quick-start/
13 |
14 | ## 4. 安装kubectl工具
15 | * https://kubernetes.io/zh/docs/tasks/tools/
16 |
17 | ## 5. 开始你的kubernetes集群操作把
18 | 常见指令:
19 | * kubectl get nodes
20 | * kubectl get pods -A
--------------------------------------------------------------------------------
/Container/Kubernets/deployment.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: apps/v1
2 | kind: Deployment
3 | metadata:
4 | name: nginx-deployment
5 | labels:
6 | app: nginx
7 | spec:
8 | replicas: 3
9 | selector:
10 | matchLabels:
11 | app: nginx
12 | template:
13 | metadata:
14 | labels:
15 | app: nginx
16 | spec:
17 | containers:
18 | - name: nginx
19 | image: nginx:1.14.2
20 | ports:
21 | - containerPort: 80
22 |
--------------------------------------------------------------------------------
/Document/RateLimiting.md:
--------------------------------------------------------------------------------
1 | # RateLimiting
2 | 大家好,我是jimmy,今天我来给大家讲解一下api的rate limiting。也就是API的限流。任何一个项目如果没有这一层的防御的话,它就会像纸糊的系统,可以被人轻松的攻击,网站奔溃。今天我就讲解一下实际项目中如果有效对这类攻击进行防御。如果觉的我的频道有帮助到你的话,请先加个关注。
3 |
4 | # why
5 | 首先为什么我们看下为什么所有系统都需要rate limiting。任何的网络应用服务都是由后端一系列服务的提供支持的。既然由服务器支持,那么服务器一定是有资源限制的。其中包括了,CPU,memeory,和数据库等等限制。就算我们后端一般不止一台服务器,有负载均衡来平衡各个服务器之间的请求数量,但服务的资源肯定是有上限的。我们希望这些资源能够运行正常,并且最大化的服务我们的正常用户。
6 |
7 | 但这个世界上,最不缺少的就是有一些充满破环好奇心的小朋友,想考研一下你的网站。比如你开发了一个类似微博,或者论坛类的网站,有人写了个脚本,开始疯狂随机发一些微博和留言,比如一分钟内,发了10w的帖子之类的。那么你这个网站肯定是轻松挂掉了。这种时候,我们的系统需要对每个用户在一定时间内能够发出的请求做出限制防止这种破坏,比如我们微博的网站上,就明确的记载了的请求的限制。再比如就是有人注册了一堆账号,又开始跑一个脚本,在多个用户名下,开始攻击,破掉了你加的用户请求数的限制。这个系统就又崩掉了。这个时候,系统意识到需要对用户ip也进行防御。最后,有人非常不怀好意,开始在全球的范围的地点进行攻击,那么这就是一个传说中DDoS攻击。很多大网站每天也经常被这种攻击高挂。很多时候我们需要在使用第三放专业的DDos的工具进行防御。
8 |
9 | # Rate limit的种类
10 | 一般需要在三中rate limiter的种类。一种是在客户的rate limiter,一个中是全局的rate limiter,一种单个机器的limtier。全方位的rate limiter才能保证我们的系统安全,程序员的头发健在。一般客户端的rate limiter的实现相对简单,我就不做讲解。全局的limiter实现相对复杂,本期视频后面会做一个讲解,server端的limiter一般有很多类包我们可以直接拿来使用。本期视频后面也会讲解一个asp.net中好用的类包。
11 |
12 | # Rate limit的算法
13 | * Token bucket
14 | 这种算法就是在每一个时间的区间内,记录请求的数量,但数量超过上线时,则对器进行拦截返回错误。这种方法的好处是相对来说,易于实现。但有点小问题就是,如果有人在区间的边沿进行攻击,我们的服务可能会收到两倍的攻击量。这个两倍的估计量则有可能破坏我的系统。
15 |
16 | * Sliding window
17 | 这种算法是对前面算法的一种优化。与token bucket的不同的时,sliding windows,不仅记录一个请求数量,它还记录了所有请求的时间戳。当当前请求到达我们的rate limiter的时候,我们会先移除最近一个时间窗口之外的旧的请求。然后再判断当前窗口中的请求数量。这样,我们就可以避免了token bucket的算法问题。
18 |
19 | # 实现
20 |
21 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # JimmyCodingExamples
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/.vs/BasicWeatherCacheApp/v17/.suo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/.vs/BasicWeatherCacheApp/v17/.suo
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/BasicWeatherCacheApp.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net6.0
5 | enable
6 | enable
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/BasicWeatherCacheApp.csproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | MvcControllerEmptyScaffolder
5 | root/Common/MVC/Controller
6 |
7 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/Controllers/RateLimitedController.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.AspNetCore.Mvc;
2 |
3 | namespace BasicWeatherCacheApp.Controllers
4 | {
5 | [ApiController]
6 | [Route("api/[controller]")]
7 | public class RateLimitedController : ControllerBase
8 | {
9 | [HttpGet]
10 | [HttpPost]
11 | [Route("limited")]
12 | public async Task Limited()
13 | {
14 | return new JsonResult(new { Limited = false });
15 | }
16 |
17 | [HttpGet]
18 | [HttpPost]
19 | [Route("indirectly-limited")]
20 | public async Task IndirectlyLimited()
21 | {
22 | return new JsonResult(new { NeverLimited = true });
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/ForecastResult.cs:
--------------------------------------------------------------------------------
1 | namespace BasicWeatherCacheApp
2 | {
3 | public class ForecastResult
4 | {
5 | public long ElapsedTime { get; }
6 | public IEnumerable Forecasts { get; }
7 |
8 | public ForecastResult(IEnumerable forecasts, long elapsedTime)
9 | {
10 | Forecasts = forecasts;
11 | ElapsedTime = elapsedTime;
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/Program.cs:
--------------------------------------------------------------------------------
1 | using BasicWeatherCacheApp;
2 | using Microsoft.Net.Http.Headers;
3 | using StackExchange.Redis;
4 |
5 | var builder = WebApplication.CreateBuilder(args);
6 |
7 | // Add services to the container.
8 |
9 | builder.Services.AddControllers();
10 | // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
11 | builder.Services.AddEndpointsApiExplorer();
12 | builder.Services.AddSwaggerGen();
13 |
14 | builder.Services.AddSingleton(ConnectionMultiplexer.Connect("localhost"));
15 | builder.Services.AddHttpClient("weatherclient", client =>
16 | {
17 | client.DefaultRequestHeaders.Add(HeaderNames.UserAgent, "Mozilla/5.0");
18 | });
19 |
20 | builder.Services.AddSingleton(ConnectionMultiplexer.Connect("localhost"));
21 |
22 | var app = builder.Build();
23 |
24 | // Configure the HTTP request pipeline.
25 | if (app.Environment.IsDevelopment())
26 | {
27 | app.UseSwagger();
28 | app.UseSwaggerUI();
29 | }
30 |
31 | app.UseHttpsRedirection();
32 |
33 | //app.UseAuthorization();
34 |
35 | app.UseSlidingWindowRateLimiter();
36 |
37 | app.MapControllers();
38 |
39 | app.Run();
40 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json.schemastore.org/launchsettings.json",
3 | "iisSettings": {
4 | "windowsAuthentication": false,
5 | "anonymousAuthentication": false,
6 | "iisExpress": {
7 | "applicationUrl": "http://localhost:18796",
8 | "sslPort": 44365
9 | }
10 | },
11 | "profiles": {
12 | "BasicWeatherCacheApp": {
13 | "commandName": "Project",
14 | "dotnetRunMessages": true,
15 | "launchBrowser": true,
16 | "launchUrl": "swagger",
17 | "applicationUrl": "https://localhost:7202;http://localhost:5230",
18 | "environmentVariables": {
19 | "ASPNETCORE_ENVIRONMENT": "Development"
20 | }
21 | },
22 | "IIS Express": {
23 | "commandName": "IISExpress",
24 | "launchBrowser": true,
25 | "launchUrl": "swagger",
26 | "environmentVariables": {
27 | "ASPNETCORE_ENVIRONMENT": "Development"
28 | }
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/SlidingWindowRateLimiterExtensions.cs:
--------------------------------------------------------------------------------
1 | namespace BasicWeatherCacheApp
2 | {
3 | public static class SlidingWindowRateLimiterExtensions
4 | {
5 | public static void UseSlidingWindowRateLimiter(this IApplicationBuilder builder)
6 | {
7 | builder.UseMiddleware();
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/WeatherForecast.cs:
--------------------------------------------------------------------------------
1 | using System.Text.Json.Serialization;
2 |
3 | namespace BasicWeatherCacheApp;
4 |
5 | public class WeatherForecast
6 | {
7 | [JsonPropertyName("number")]
8 | public int Number { get; set; }
9 |
10 | [JsonPropertyName("name")]
11 | public string Name { get; set; }
12 |
13 | [JsonPropertyName("startTime")]
14 | public DateTime StartTime { get; set; }
15 |
16 | [JsonPropertyName("endTime")]
17 | public DateTime EndTime { get; set; }
18 |
19 | [JsonPropertyName("isDayTime")]
20 | public bool IsDayTime { get; set; }
21 |
22 | [JsonPropertyName("temperature")]
23 | public int Temperature { get; set; }
24 |
25 | [JsonPropertyName("temperatureUnit")]
26 | public string? TemperatureUnit { get; set; }
27 |
28 | [JsonPropertyName("temperatureTrend")]
29 | public string? TemperatureTrend { get; set; }
30 |
31 | [JsonPropertyName("windSpeed")]
32 | public string? WindSpeed { get; set; }
33 |
34 | [JsonPropertyName("windDirection")]
35 | public string? WindDirection { get; set; }
36 |
37 | [JsonPropertyName("shortForecast")]
38 | public string? ShortForecast { get; set; }
39 |
40 | [JsonPropertyName("detailedForecast")]
41 | public string? DetailedForecast { get; set; }
42 | }
43 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft.AspNetCore": "Warning"
6 | }
7 | },
8 | "RedisRateLimits": [
9 | {
10 | "Path": "/api/RateLimited/limited",
11 | "Window": "30s",
12 | "MaxRequests": 5
13 | },
14 | {
15 | "PathRegex": "^/api/*",
16 | "Window": "1h",
17 | "MaxRequests": 50
18 | }
19 | ]
20 | }
21 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft.AspNetCore": "Warning"
6 | }
7 | },
8 | "AllowedHosts": "*"
9 | }
10 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/AspNetCoreRateLimit.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/AspNetCoreRateLimit.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/BasicWeatherCacheApp.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/BasicWeatherCacheApp.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/BasicWeatherCacheApp.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/BasicWeatherCacheApp.exe
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/BasicWeatherCacheApp.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/BasicWeatherCacheApp.pdb
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/BasicWeatherCacheApp.runtimeconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "runtimeOptions": {
3 | "tfm": "net6.0",
4 | "frameworks": [
5 | {
6 | "name": "Microsoft.NETCore.App",
7 | "version": "6.0.0"
8 | },
9 | {
10 | "name": "Microsoft.AspNetCore.App",
11 | "version": "6.0.0"
12 | }
13 | ],
14 | "configProperties": {
15 | "System.GC.Server": true,
16 | "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
17 | }
18 | }
19 | }
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/Microsoft.OpenApi.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/Microsoft.OpenApi.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/Microsoft.Win32.SystemEvents.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/Microsoft.Win32.SystemEvents.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/Newtonsoft.Json.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/Newtonsoft.Json.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/Pipelines.Sockets.Unofficial.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/Pipelines.Sockets.Unofficial.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/StackExchange.Redis.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/StackExchange.Redis.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/Swashbuckle.AspNetCore.Swagger.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/Swashbuckle.AspNetCore.Swagger.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/System.Configuration.ConfigurationManager.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/System.Configuration.ConfigurationManager.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/System.Diagnostics.PerformanceCounter.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/System.Diagnostics.PerformanceCounter.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/System.Drawing.Common.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/System.Drawing.Common.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/System.Security.Cryptography.ProtectedData.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/System.Security.Cryptography.ProtectedData.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/System.Security.Permissions.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/System.Security.Permissions.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/System.Windows.Extensions.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/System.Windows.Extensions.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/appsettings.Development.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft.AspNetCore": "Warning"
6 | }
7 | },
8 | "RedisRateLimits": [
9 | {
10 | "Path": "/api/RateLimited/limited",
11 | "Window": "30s",
12 | "MaxRequests": 5
13 | },
14 | {
15 | "PathRegex": "^/api/*",
16 | "Window": "1h",
17 | "MaxRequests": 50
18 | }
19 | ]
20 | }
21 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/appsettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "Logging": {
3 | "LogLevel": {
4 | "Default": "Information",
5 | "Microsoft.AspNetCore": "Warning"
6 | }
7 | },
8 | "AllowedHosts": "*"
9 | }
10 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/ref/BasicWeatherCacheApp.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/ref/BasicWeatherCacheApp.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/runtimes/unix/lib/netcoreapp3.0/System.Drawing.Common.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/runtimes/unix/lib/netcoreapp3.0/System.Drawing.Common.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/runtimes/win/lib/netcoreapp2.0/System.Diagnostics.PerformanceCounter.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/runtimes/win/lib/netcoreapp2.0/System.Diagnostics.PerformanceCounter.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/runtimes/win/lib/netcoreapp3.0/Microsoft.Win32.SystemEvents.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/runtimes/win/lib/netcoreapp3.0/Microsoft.Win32.SystemEvents.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/runtimes/win/lib/netcoreapp3.0/System.Drawing.Common.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/runtimes/win/lib/netcoreapp3.0/System.Drawing.Common.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/runtimes/win/lib/netcoreapp3.0/System.Windows.Extensions.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/runtimes/win/lib/netcoreapp3.0/System.Windows.Extensions.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/bin/Debug/net6.0/runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/BasicWeatherCacheApp.csproj.nuget.g.targets:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs:
--------------------------------------------------------------------------------
1 | //
2 | using System;
3 | using System.Reflection;
4 | [assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = "")]
5 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.42000
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | using System;
12 | using System.Reflection;
13 |
14 | [assembly: System.Reflection.AssemblyCompanyAttribute("BasicWeatherCacheApp")]
15 | [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
16 | [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
17 | [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
18 | [assembly: System.Reflection.AssemblyProductAttribute("BasicWeatherCacheApp")]
19 | [assembly: System.Reflection.AssemblyTitleAttribute("BasicWeatherCacheApp")]
20 | [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
21 |
22 | // Generated by the MSBuild WriteCodeFragment class.
23 |
24 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.AssemblyInfoInputs.cache:
--------------------------------------------------------------------------------
1 | 57d5c9c9377255b301746403cfeabea7f82901d2
2 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.GeneratedMSBuildEditorConfig.editorconfig:
--------------------------------------------------------------------------------
1 | is_global = true
2 | build_property.TargetFramework = net6.0
3 | build_property.TargetPlatformMinVersion =
4 | build_property.UsingMicrosoftNETSdkWeb = true
5 | build_property.ProjectTypeGuids =
6 | build_property.InvariantGlobalization =
7 | build_property.PlatformNeutralAssembly =
8 | build_property._SupportedPlatformList = Linux,macOS,Windows
9 | build_property.RootNamespace = BasicWeatherCacheApp
10 | build_property.RootNamespace = BasicWeatherCacheApp
11 | build_property.ProjectDir = F:\project\JimmyCodingExamples\RateLimiter\BasicWeatherCacheApp\
12 | build_property.RazorLangVersion = 6.0
13 | build_property.SupportLocalizedComponentNames =
14 | build_property.GenerateRazorMetadataSourceChecksumAttributes =
15 | build_property.MSBuildProjectDirectory = F:\project\JimmyCodingExamples\RateLimiter\BasicWeatherCacheApp
16 | build_property._RazorSourceGeneratorDebug =
17 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.GlobalUsings.g.cs:
--------------------------------------------------------------------------------
1 | //
2 | global using global::Microsoft.AspNetCore.Builder;
3 | global using global::Microsoft.AspNetCore.Hosting;
4 | global using global::Microsoft.AspNetCore.Http;
5 | global using global::Microsoft.AspNetCore.Routing;
6 | global using global::Microsoft.Extensions.Configuration;
7 | global using global::Microsoft.Extensions.DependencyInjection;
8 | global using global::Microsoft.Extensions.Hosting;
9 | global using global::Microsoft.Extensions.Logging;
10 | global using global::System;
11 | global using global::System.Collections.Generic;
12 | global using global::System.IO;
13 | global using global::System.Linq;
14 | global using global::System.Net.Http;
15 | global using global::System.Net.Http.Json;
16 | global using global::System.Threading;
17 | global using global::System.Threading.Tasks;
18 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.MvcApplicationPartsAssemblyInfo.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.MvcApplicationPartsAssemblyInfo.cache
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.MvcApplicationPartsAssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //------------------------------------------------------------------------------
2 | //
3 | // This code was generated by a tool.
4 | // Runtime Version:4.0.30319.42000
5 | //
6 | // Changes to this file may cause incorrect behavior and will be lost if
7 | // the code is regenerated.
8 | //
9 | //------------------------------------------------------------------------------
10 |
11 | using System;
12 | using System.Reflection;
13 |
14 | [assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("Swashbuckle.AspNetCore.SwaggerGen")]
15 |
16 | // Generated by the MSBuild WriteCodeFragment class.
17 |
18 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.assets.cache:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.assets.cache
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.csproj.AssemblyReference.cache:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.csproj.CopyComplete:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.csproj.CopyComplete
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.csproj.CoreCompileInputs.cache:
--------------------------------------------------------------------------------
1 | e77464db29b0296e0860693d9e0ea8bb9a2818bd
2 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.genruntimeconfig.cache:
--------------------------------------------------------------------------------
1 | 2608560afaf578e5bf63c88a029b98c72ecf0895
2 |
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.pdb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/BasicWeatherCacheApp.pdb
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/apphost.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/apphost.exe
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/ref/BasicWeatherCacheApp.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/JimmyCoding92/JimmyCodingExamples/d7c916647aaec086f8ed0fa3d4b84c062255210a/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/ref/BasicWeatherCacheApp.dll
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/Debug/net6.0/staticwebassets.build.json:
--------------------------------------------------------------------------------
1 | {
2 | "Version": 1,
3 | "Hash": "Gl0OxHbxgN/bznAxBs3HiyIyjKhQZ8n2WJ0aRBvLWBc=",
4 | "Source": "BasicWeatherCacheApp",
5 | "BasePath": "_content/BasicWeatherCacheApp",
6 | "Mode": "Default",
7 | "ManifestType": "Build",
8 | "ReferencedProjectsConfiguration": [],
9 | "DiscoveryPatterns": [],
10 | "Assets": []
11 | }
--------------------------------------------------------------------------------
/RateLimiter/BasicWeatherCacheApp/obj/staticwebassets.pack.sentinel:
--------------------------------------------------------------------------------
1 | 2.0
2 | 2.0
3 | 2.0
4 | 2.0
5 | 2.0
6 | 2.0
7 | 2.0
8 | 2.0
9 | 2.0
10 |
--------------------------------------------------------------------------------
/RateLimiter/readme.md:
--------------------------------------------------------------------------------
1 | # Rate Limiter项目使用说明
2 |
3 | ## Redis针对rate limit的官方文档
4 | https://developer.redis.com/develop/dotnet/aspnetcore/rate-limiting/sliding-window/
5 |
6 | ## AspNetCoreRateLimit git 链接
7 | https://github.com/stefanprodan/AspNetCoreRateLimit
--------------------------------------------------------------------------------
/SQL/CommonSQL.md:
--------------------------------------------------------------------------------
1 | CREATE DATABASE JimmyCoding;
2 | DROP DATABASE JimmyCoding;
3 |
4 | Use JimmyCodingDataBase
5 | create table FirstTable (
6 | id uniqueidentifier not null PRIMARY KEY,
7 | charColumn char(10),
8 | varCharColumn varchar(10),
9 | ncharColumn nchar(10),
10 | nvarcharColumn nvarchar(10),
11 | bitColumn bit,
12 | intColumn int,
13 | bigintColumn bigint,
14 | decimalColumn decimal,
15 | floatColumn float,
16 | moneyColumn money,
17 | datetimeColumn datetime,
18 | binaryColumn binary,
19 | imageColumn image,
20 | xmlColumn xml,
21 | rowVersionColumn rowversion,
22 | geoColumn geography
23 | );
24 |
25 | create table SecondTable (
26 | id uniqueidentifier not null PRIMARY KEY,
27 | firstTableIdReference uniqueidentifier FOREIGN KEY REFERENCES FirstTable(id)
28 | );
29 |
30 | drop table FirstTable
31 | drop table SecondTable
32 |
33 | Use WideWorldImporters
34 | select CityName from Application.Cities
35 |
36 | select * from Application.Cities
37 |
38 | select distinct CityName from Application.Cities order by CityName asc
39 |
40 | select CityName, Count(CityName) as cityCount from Application.Cities group by CityName having COUNT(CityName) > 1
41 |
42 | select SupplierId, TransactionAmount, (select AVG(TransactionAmount) from Purchasing.SupplierTransactions) as TransactionAmount
43 | from Purchasing.SupplierTransactions
44 |
45 | select SupplierID, SUM(nums_order) FROM
46 | (select SupplierID, TransactionDate, COUNT(*) as nums_order
47 | from Purchasing.SupplierTransactions
48 | GROUP by SupplierID, TransactionDate) sub
49 | group by SupplierID
50 |
51 | select *
52 | from Purchasing.SupplierTransactions
53 | where SupplierID IN (select PersonId from Application.People where IsEmployee = 1)
54 |
--------------------------------------------------------------------------------
/SQL/SetupSQLDocker.md:
--------------------------------------------------------------------------------
1 | # 配置SQL本地环境
2 |
3 | ## 微软官方文档
4 | https://docs.microsoft.com/en-us/sql/linux/tutorial-restore-backup-in-sql-server-container?view=sql-server-ver15
5 |
6 | ## 1. 配置sql sever docker image
7 | docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=yourStrong(!)Password" -p 1433:1433 -d mcr.microsoft.com/mssql/server:2019-latest
8 |
9 | ## 2. 下载数据集
10 | powershell命令: curl -OutFile "wwi.bak" "https://github.com/Microsoft/sql-server-samples/releases/download/wide-world-importers-v1.0/WideWorldImporters-Full.bak"
11 |
12 | ## 3. 将数据集拷入docker中
13 | docker cp wwi.bak sql1:/var/opt/mssql/backup
14 |
15 | ## 4. 将数据集载入到sql server中
16 | docker exec -it sql1 /opt/mssql-tools/bin/sqlcmd `
17 | -S localhost -U SA -P "" `
18 | -Q "RESTORE DATABASE WideWorldImporters FROM DISK = '/var/opt/mssql/backup/wwi.bak' WITH MOVE 'WWI_Primary' TO '/var/opt/mssql/data/WideWorldImporters.mdf', MOVE 'WWI_UserData' TO '/var/opt/mssql/data/WideWorldImporters_userdata.ndf', MOVE 'WWI_Log' TO '/var/opt/mssql/data/WideWorldImporters.ldf', MOVE 'WWI_InMemory_Data_1' TO '/var/opt/mssql/data/WideWorldImporters_InMemory_Data_1'"
19 |
20 | ## 5. 下载使用SSMS登录sql server
21 | https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver15
--------------------------------------------------------------------------------