Bachelors Level/Third Year/Sixth Semester/Science bit/sixth semester/net centric computing/syllabus

Bachelors In Information Technology

Institute of Science and Technology, TU

Nature of the course: (Theory+Lab)

F.M: 60+20+20 P.M: 24+8+8

Credit Hrs: 3Hrs

NET Centric Computing [BIT351]
Course Objective
i.
The objective of this course is to understand the theoretical foundation as well as its practical aspects of ASP.NET Core web application framework and C# language features.
Course Description

The course covers the concepts of cross-platform web application development using the ASP.NET Core MVC framework using C# programming Language.

S1:Language Preliminaries[8]
1
Overview of .Net framework, Compilation and execution of .Net applications, Constructor, Properties, Arrays and String, Indexers, Inheritance, use of "base" keyword, Method hiding and overriding, applying polymorphism in code extensibility, abstract class sealed class, interface, Delegate and Events, Partial class, Collections, Generics, File IO, Try statements and Exceptions, Attributes: Attribute Classes, Named and Positional Attribute Parameters, Attribute Targets, Specifying Multiple Attributes
S2:Introduction to ASP.NET[3]
1
.NET and ASP.NET frameworks: .NET, .NET Core, Mono, ASP.NET Web Forms, ASP.NET MVC, ASP.NET Web API, ASP.NET Core, .NET Architecture and Design Principles, Compilation and Execution of .NET applications: CLI, MSIL and CLR, .NET Core in detail, .NET CLI: build, run test and deploy .NET Core Applications
S3:HTTP and ASP.NET Core[3]
1
HTTP, Request and Response Message Format, Common web application architectures, MVC Pattern, ASP.NET Core Architecture Overview, Projects, and Conventions. ASP.NET and ASP.NET MVC
S4:Creating ASP.NET core MVC applications[7]
1
Setting up the Environment, Controllers and Actions: Create Controllers, Create Actions and Action Results Types. Rendering HTML with Views: Razor Syntax. Understanding Tag Helpers. Models: Binding and Validations. URL Routing and features. Web API Applications: API Controllers, JSON Dependency Injection and IOC containers
S5:Working with Database[6]
1
ADO.NET basics: Connection, Command, Reader and Adapter classes. Entity Framework (EF) Core. Object-Relational Mapper (ORM). Adding EF Core to an application: Choosing database provider data models and data context. Querying and Saving data to database: Create read update and delete records
S6:State Management on ASP.NET Core Application[4]
1
State Management on stateless HTTP. Server-side strategies: Session State TempData Using HttpContext Cache Client-side strategies Cookies Query Strings Hidden Fields
S7:Client-side Development in ASP.NET Core[4]
1
Common client-side web technologies JQuery Forms and Validation Single Page Application (SPA) Frameworks Angular React
S8:Building Applications with React and ASP.NET Core[3]
1
Creating Forms in React Making REST API Calls from React to ASP.NET Core for integration
S9:Securing in ASP.NET Core Application[5]
1
Authentication: ASP.NET Core Identity Adding authentication to apps and identity service configurations Authorization Roles Claims and Policies Securing Controllers and Action Methods Common Vulnerabilities Cross-site Scripting attacks SQL Injection attacks Cross-site Request Forgery (CSRF) Open Redirect Attacks
S10:Hosting and Deploying ASP.NET Core Application[2]
1
App Servers and Hosting models IIS Nginx Apache ASP.NET Core Module Kestrel Docker Containerization Publish to Azure cloud
References
1.
C# 8.0 and .NET Core 3.0 – Modern Cross-Platform Development Fourth Edition by Mark J Price 2019
2.
ASP.NET Core in Action by Andrew Lock 2018
3.
Learning ASP.NET Core 2.0 Michel Bruchet Jason De Oliveira 2017
4.
Learn ASP.NET Core 3 - Second Edition Kenneth Yamikani Fukizi Jason De Oliveira Michel Bruchet 2019
5.
ASP.NET Core 5 and React By Carl Rippon
Labrotary Work
Students will have to complete a project covering most of the features of above course using ASP.NET Core and C#.