• Stars
    star
    332
  • Rank 126,957 (Top 3 %)
  • Language
    C#
  • License
    MIT License
  • Created almost 5 years ago
  • Updated almost 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

NetLearner: The Internet Resource Learning Helper built with ASP .NET Core

Live Instance : Portal | MVC Demo | Razor Pages Demo | Blazor Demo

NetLearnerApp

NetLearner: The Internet Resource Learning Helper built with ASP .NET Core NetLearner Logo

NetLearner is an ASP .NET Core web app to allow any user to consolidate multiple learning resources all under one umbrella. The codebase itself is a way for new/existing .NET developers to learn ASP .NET Core, while a deployed instance of NetLearner can be used as a curated link-sharing web application.

In 2020, a new A-Z weekly blog series covered 26 different topics from January through June 2020.

Take a look at the 2020 A-Z series.

To revisit the older series, you may also refer to the 2019 A-Z series.

Restrictions

Registration for each web app has been disabled by default. To enable registration, please do the following:

  1. Locate scaffolded Identity pages under /Areas/Identity/Pages/Account/
  2. In Register.cshtml, update the tag to include environments in addition to Development, if desired.
  3. In Register.cshtml.cs, replace [Authorize] with [AllowAnonymous] to allow access to registration

Architecture

The current version of NetLearner on Github includes a shared .NET Standard Class Library, used by multiple web app projects. The web apps include:

  • MVC: familiar to most ASP .NET developers
  • Razor Pages: relatively new in ASP .NET
  • Blazor: the latest offering from ASP .NET

NetLearner Archicture: Web App + API

Future updates will also include:

  • Web API, exposed for use by other consumers
  • JavaScript front-end web app(s)

Note that an ASP .NET Core web app can contain various combinations of all of the above. However, the purpose of the NetLearner application code is to demonstrate how to achieve similar results using all of the above. So, each of the web app projects will be developed in parallel, using a shared library.

Shared Library

The shared library is a .NET Standard 2.1 library. This version was selected because .NET Core 3.x supports .NET Standard 2.1, as seen in the official documentation.

.NET Standard: https://docs.microsoft.com/en-us/dotnet/standard/net-standard

The shared library contains the following:

  • Database Context: for use by Entity Framework Core
  • Migrations: for EF Core to manage the (SQL Server) db
  • Models: db entities, used by web apps
  • Services: service classes to handle CRUD operations

Using terms from Clean Architecture references, you may think of the DB Context and Migrations as part of the Infrastructure code, while the Models and Services are part of the Core code. For simplicity, these are all kept in a single library. In your own application, you may split them up into separate assemblies named Core and Infrastructure.

Running the Application

In order to run the web app samples, clone the following repository:

NetLearner: https://github.com/shahedc/NetLearnerApp

Here, you will find at least 4 projects:

  1. NetLearner.SharedLib: shared library project
  2. NetLearner.Blazor: Blazor server-side web project
  3. NetLearner.Mvc: MVC web project
  4. NetLearner.Pages: Razor Pages web project

To create a local copy of the database:

  1. Open the solution file in Visual Studio 2019
  2. In the Package Manager Console panel, change the Default Project to “NetLearner.SharedLib” to ensure that EF Core commands are run against the correct project
  3. In the Package Manager console, run the Update-Database command
  4. Verify that there are no errors upon database creation

To run the samples from Visual Studio 2019:

  1. Run each web project one after another
  2. Navigate to the links in the navigation menu, e.g. Lists and Resources
  3. Add/Edit/Delete items in any of the web apps
  4. Create one or more lists
  5. Create one more resources, assign each to a list
  6. Verify that your data changes are reflected no matter which web app you use

NetLearner MVC: Resource Lists NetLearner MVC: Resource Lists

NetLearner MVC: Learning Resources NetLearner MVC: Learning Resources

NetLearner Razor Pages: Resource Lists NetLearner Razor Pages: Resource Lists

NetLearner Razor Pages: Learning Resources NetLearner Razor Pages: Learning Resources

NetLearner Blazor: Resource Lists NetLearner Blazor: Resource Lists

NetLearner Blazor: Learning Resources NetLearner Blazor: Learning Resources

What's Next?

Browse the 2020 A-Z series to catch up on blog posts in the 2020 A-Z series.

Up Next: expect a free ebook that combines all the 26 articles into a single document auto-generated from the Worker Service sample.

More Repositories

1

WorkerServiceSample

ASP .NET Core 3.0 Worker Service Sample
C#
143
star
2

SimpleUpload

ASP .NET Core web app upload from browser to Azure Storage Account
C#
39
star
3

NetLearner

(Outdated) ASP.NET Core Web app to organize online learning resources.
C#
26
star
4

multiweb

Multiple projects for debugging sample.
C#
19
star
5

WebAppsWithSharedLib

ASP .NET Core Web Apps with Shared Library
C#
17
star
6

SignalRCoreSamples

SignalR Core Samples
HTML
8
star
7

GruutChatbot

I am Gruut
C#
7
star
8

YamlForAzureDevOps

YAML for Azure DevOps
7
star
9

BlazorDemos

Blazor Demos
HTML
6
star
10

shahedc.github.io

VRROOM: Voluntary Resume Review and Optional Occasional Mentorship
HTML
5
star
11

ASPNET-Calc-Service

ASP.NET 5 calc service demo
C#
5
star
12

IISHostedWebApp

IIS-Hosted ASP .NET Core Web App Sample
HTML
5
star
13

csharpaz

C# A to Z code samples
C#
5
star
14

CalcApp30WithTests

ASP .NET Core calculator web app sample with unit tests
HTML
4
star
15

SpeechBubblesForKinect

Speech Bubbles For Kinect
C#
3
star
16

FormsAndBindings

ASP .NET Core HTML Forms and Bindings
C#
3
star
17

PagesDemo

Pages in ASP .NET Core: Razor, Blazor and MVC Views
C#
3
star
18

UFO-Game-Enhanced

Unity's UFO Game, Enhanced
ASP
3
star
19

TagHelperAuthoring30

ASP .NET Core 3.0 Tag Helper Authoring Sample
HTML
2
star
20

SampleBotLuis

Bot Framework v4 bot with LUIS
C#
2
star
21

AspNetCoreMiddlewareSample

ASP .NET Core Middleware Sample
C#
2
star
22

MembershipBotHack

Membership Bot Hack Project
C#
2
star
23

ValidationSampleApp

ASP .NET Core Web App with Validation Samples
C#
2
star
24

BotSampleWithDb

Bot Sample with database connection
C#
2
star
25

ErrorHandlingWeb

Error Handling Web App Samples
HTML
2
star
26

AspNetCoreLoggingSample

ASP .NET Core Logging Sample
HTML
2
star
27

csharp-solutions

C# Solutions to business problems.
2
star
28

XmlJsonSerialization

ASP .NET Core Sample App with XML and JSON Serialization
C#
2
star
29

RazorPagesCore30

ASP .NET Core Razor Pages Sample with Core 3.0
C#
2
star
30

AppSecretDemo

ASP .NET Core 2.1 with App Secrets and Config Files
C#
1
star
31

AspNetCoreTodo

AspNetCoreTodo
C#
1
star
32

InfoNotifier

Web App for teams to add information and subscribe to notifications.
C#
1
star
33

AspNetCoreWatcher

ASP .NET Core Web API sample project to demonstrate dotnet run watch via CLI
C#
1
star
34

WebAppWithQueries

Web App with Queries and Query Tags
C#
1
star
35

AspNetCoreStaticSample

Sample ASP .NET Core web app with static files
C#
1
star
36

AspNetCore2019Org

ASP .NET Core web app in VS2019 with organizational authentication
HTML
1
star
37

OptionsHelper

Visualize your options trading contracts, such as calls and puts.
C#
1
star
38

EbookMaker

Ebook Maker app
C#
1
star
39

Rivet

Related Info Viewer... with Extra Things!
1
star
40

AspNetCoreKeyVaultSample

ASP .NET Core Key Vault Sample
C#
1
star
41

TechRecruitingTips

Tips for tech recruiters and hiring managers.
1
star
42

AspNetCoreWithPipeline

ASP .NET Core Web Project with YAML for Azure DevOps Pipelines
HTML
1
star
43

OrderApp

Web App with SQL DB + Azure Functions back-end that powers a Bot Framework bot, used by customers to view items and place orders.
C#
1
star
44

qnabot

qnabot
HTML
1
star
45

mva3platformer

Project files for 3rd MVA video series on Construct 2
1
star
46

ninja-cat-flyer-5

rebuilt for Unity 5
C#
1
star
47

shahedc

Shahed's Profile
1
star
48

operation-remote-resupply-master

This repo holds the technical content for Operation Remote Resupply, a Microsoft event designed to acquaint software developers with full-lifecycle Xamarin Forms development using Visual Studio 2017.
HTML
1
star