Skip to main content

Top 4 Reason Why Should Use ASP.NET Core MVC For Your Next APP

ASP.NET Core MVC is a very fascinating framework, most times developers love to stick to the tools they are already used to, which is great because it saves time and makes it easy to reuse some of your codes and components. With the coming of ASP.NET Core MVC there is a very good reason to upgrade, not just because the framework is cool but extremely easy to design modern applications with less complexity. ASP.NET Core MVC offers you a platform that is heavily extensible, the ability to twerk the framework to your desire yet with tight control over HTML and HTTP that gives you total control to decide the type of experience you want your user's to have.

Below are some of the great features that make ASP.NET Core MVC unique.

1) Tight Control Over HTML and HTTP:  ASP.NET Core MVC is a very clean framework, it provides neat, standard - compliant markup output with it's inbuilt tag helpers and because you have tight control over HTML, ASP.NET Core MVC provides you a neat platform to craft simple and neat markups. ASP.NET Core MVC also makes it extremely easy to use most popular client side libraries like jQuery, Bootstrap and AngularJS. ASP.NET Core MVC has tight support for this libraries, and this makes development with this libraries not only neat but also very intuitive.
ASP.NET Core MVC also gives you tight control over HTTP, this tight control over the request that passed through the browser and server, makes it easy to decide not just how to improve the application performance but the overall user experience.

2) ASP.NET Core MVC is heavily Extensible: .NET Core is an open source framework, you can download the source codes and extend it's functionality to suit your project, but such cases are rare except in situations you're developing a very unique applications that requires some unique components and features. Also you can easily extend the default functionality of ASP.NET Core MVC component to suit your project or change the entire component with your own build. Because ASP.NET Core MVC are built on many independent components that can satisfy a .NET interface or that are built on abstract base class, this means that key components can easily be replaced with any of your implementations.

3) Testability: Because ASP.NET Core MVC supports and encourage deep abstraction and separation of applications concerns , this makes it extremely easy to build a maintainable and testable application. ASP.NET Core MVC by default separates different application concerns into independent pieces. And also each part of ASP.NET Core MVC framework can easily be isolated and replaced for testing.

4) ASP.NET Core MVC It's a Cross-Platform Framework: Before now ASP.NET is a window specific platform, meaning it can only be developed and deploy on only windows platform, this sets lots of limitation, but the emergency of .NET Core Framework changed that, .NET Core Framework support fully other platforms like Linux and OSX/Mac OS, both for development and deployment. .NET Core  makes it not only possible to deploy on cloud Containers like Docker but also easy.


Popular posts from this blog

How to implement RESTful API Versioning in ASP.NET Web API 2 using IHttpRouteConstraint

The only thing constant in life is change, and that is proved everyday in our industry, API’s are cool to extend the functionality of your application and expose it to other developers. The cool thing about IT and software, it’s that things changes quite rapidly and so it’s the technology, hence technology can change and the needs of your organisation can change, hence in order to keep serving this evolving needs and keep been relevant, your api might need to change also. Small changes can be accommodated within the initial version, but changes that will risked breaking the existing code, will required the need for versioning.

Implementing a custom IHttpRouteConstraint

According to msdn, a IHttpRouteConstraint simply Represents a base class route constraint. What then is a route constraint? A route constraint simply gets or sets a dictionary of expressions that specify valid values for a URL parameter.

publicclassApiVersionRouteConstraint : IHttpRouteConstraint


How to implement multi-tenancy with subdomains using Route Constraint in ASP.NET MVC

According to Wikipedia, The term "software multitenancy" refers to a software architecture in which a single instance of software runs on a server and serves multiple tenants. A tenant is a group of users who share a common access with specific privileges to the software instance. With a multitenant architecture, a software application is designed to provide every tenant a dedicated share of the instance - including its data, configuration, user management, tenant individual functionality and non-functional properties. Multitenancy contrasts with multi-instance architectures, where separate software instances operate on behalf of different tenants. By giving companies, access to a tenant through a subdomain of choice, will help to personalise the experience more and gives a sense of ownership to each tenant. This will go along way to bring consistency in there branding.
Implementing Route Constraint
You use route constraints to restrict the browser requests that match a partic…

Top 4 Ways To Stop Mass Assignment Attack in ASP.NET Core MVC

Mass assignment or over posting is an attack on websites that binds models to request. This is where active record pattern in a web application is abused to modify data items that the user should not normally be allowed to access such as password, granted permissions, or administrator status. Because the attack is use to set or alter values that the developers does not expect to be by the user.

Scenarios of Mass Assignment Attack

To demonstrate how mass attack work, take for instance a web application, that has many users with different level of privileges and roles on the website. Each user is restricted on some point on what and what not to do while on the website, with the admin as the only user that have absolute role to control and do all things in the website. With mass attack a user can simply take over the role of the admin in the website and start doing things that is outside his roles and privileges.

For Instance, Let say you have a model:

public class UserModel
public string U…