lundi 25 novembre 2019

ASP.NET Core & AuthorizationPolicyProvider

Un peu de lecture au sujet de l'Authorization Policy, comment définir un Provider dans mon application ASP.NET Core MVC :

C# Corner - Creating Custom Authorization Policy Provider In ASP.NET Core

Et l'article que l'on me propose ensuite :

C# Corner - Claim Based And Policy-Based Authorization With ASP.NET Core 2.1

Et pendant que j'y suis :

C# Corner - Role Base Authorization In ASP.NET Core 2.1

Et donc avec ça, j'ai résolut les problèmes de droits d'accès dans mon application ASP.NET Core & Angular.

Au hasard de mes pérégrinations sur Github je tombe sur les travaux de damienbod

Github - damienbod
J'y reviendrai son github est intéressant à plusieurs titres et concernant l'authentification.

To Be Continued



vendredi 22 novembre 2019

MvcOptions Class Provides programmatic configuration for the MVC framework

Je trouve ce chapitre en m'intéressant à la fonction AddMvc que l'on trouve dans tous les bons fichiers Startup.cs des applications ASP.NET MVC Core qui utilisent l'injections des dépendances pour configurer le framework MVC.

Je reprends ma respiration et je suis donc dans la fonction :

public void ConfigureServices(IServiceCollection services)
{
 services.Configure<CookiePolicyOptions>(options =>
 {
    // This lambda determines whether user consent for non-essential cookies is needed for a given request.
    options.CheckConsentNeeded = context => true;
    options.MinimumSameSitePolicy = SameSiteMode.None;
 });

 services.AddDbContext<SchoolContext>(options =>
  options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

 services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
}


De mon application ContosoUniversity et pour que cela fonctionne, j'ai du installer le package Microsoft.Extensions.DependencyInjection.Abstraction :



Installed Package - Microsoft.Extensions.DependencyInjection.Abstractions
Installed Package - Microsoft.Extensions.DependencyInjection.Abstractions

Programmatic Configuration of MVC for ASP.NET Core

C'est le chapitre qu'il faut maîtriser pour configurer mon Application ASP.NET Core MVC. Je vous laisse avec la page suivante :

Andrew Lock | .NET Escapades - Accessing services when configuring MvcOptions in ASP.NET Core

Have a nice day!




mardi 12 novembre 2019

ASP.NET Core Dependency Injection v2.x vs v3.x

Quelles différences entre ASP.NET Core v2.x et v3.x au niveau de l'injection des dépendances. Tout ceci est en perpétuel changements, il faut suivre. Je présente rapidement les nouveautés de v3.x. J'aime comparer les solutions quand je les ai.

https://github.com/aspnet/AspNetCore.Docs/tree/master/aspnetcore/fundamentals/dependency-injection/samples 

Le fichier Startup.cs

AddMvc est une fonction impactée par la v3.0, on n'utilise plus AddMvc mais AddRazorPages comme le montre la comparaison suivante :



ASP.NET Core v2.x vs v3.x le fichier Startup.cs
ASP.NET Core v2.x vs v3.x le fichier Startup.cs

Le fichier Program.cs

On n'utilise maintenant using Microsoft.Extensions.Hosting; de la façon suivante :


ASP.NET Core v2.x vs v3.x le fichier Program.cs
ASP.NET Core v2.x vs v3.x le fichier Program.cs

Rien de bien grave au niveau de l'injection des dépendances entre .NET Core 3.0 et .NET Core 2.0

Et puis c'est tout !

ASP.NET Core & EF Core - Présentation 2

Ce n'est pas facile de s'y retrouver dans tous ces modèles d'applications : ASP.NET avec MVC Razor Blazor, Angular CLI etc... Je tente de recréer un projet Angular, j'arrive dans le répertoire Migration et poof !

Surtout après l'article : ASP.NET Core & Entity Framework - Présentation 1

Je souhaite simplement faire : Update-Database :


PowerShell : Update-Database does not fonctionne on Angular Project
Si j'utilise maintenant la fenêtre de commande DOS :

Command DOS : dotnet ef database update does not fonctionne on Angular Project
Et donc, on découvre que Entity Framework possède une version Core qui ne fonctionne pas de la même façon, lein lein.

Me voilà plongé dans :

Informations de référence sur les outils Entity Framework Core-CLI .NET

Tuto rapide :

PM> dotnet ef
                     _/\__      
               ---==/    \\     
         ___  ___   |.    \|\   
        | __|| __|  |  )  
\\\  
        | _| | _|   \_/ |  //|\\
        |___||_|       /  
\\\/\\
Entity Framework Core .NET Command-line Tools 2.2.6-servicing-10079
Usage: dotnet ef [options] [command]
Options:
  --version        Show version information
  -h|--help        Show help information
  -v|--verbose     Show verbose output.
  --no-color       Don't colorize output.
  --prefix-output  Prefix output with level.

Commands:
  database    Commands to manage the database.
  dbcontext   Commands to manage DbContext types.
  migrations  Commands to manage migrations.

Use "dotnet ef [command] --help" for more information about a command.

Du coup je tape la commande :

PM> dotnet ef --version
Entity Framework Core .NET Command-line Tools
2.2.6-servicing-10079


Mince mais c'est le moyen âge ici !