I am using .NET Core 3.0.100 ; Microsoft Visual Studio Community 2019 Preview Version 16.4.0 Preview 1.0 ; Blazor-server (official release).
I am trying to add Authentication and Authorization to my Blazor-server web app. I am reading guideline at here https://docs.microsoft.com/en-us/aspnet/core/security/authentication/scaffold-identity?view=aspnetcore-3.0&tabs=visual-studio#scaffold-identity-into-an-empty-project
(I also read this https://github.com/aspnet/Identity/issues/1825 )
Then I right-click on Project, choose Add
\ New Scaffolded Item...
I read file ScaffoldingReadme.txt
, then follow the guide.
I press F5 for debugging, I catch error
Severity: Error
Error Code: CS0246
Description: The type or namespace name 'IWebHostEnvironment' could not be found (are you missing a using directive or an assembly reference?)
Project: foo
File: C:\Users\donhuvy\Desktop\foo\bar\obj\Debug\netcoreapp3.0\Razor\Pages\Shared\_Layout.cshtml.g.cs
Line: 455
Suppression State: Active
Screenshot [![enter image description here][4]][4]
Because file \obj\Debug\netcoreapp3.0\Razor\Pages\Shared\_Layout.cshtml.g.cs
stand inside Razor Class Library Microsoft.AspNetCore.Identity.UI (3.0.0)
therefore I cannot edit it.
How to fix it?
This is an issue,
The code generate is
Microsoft.AspNetCore.Hosting
@using Microsoft.AspNetCore.Mvc.ViewEngines
@inject IWebHostEnvironment Environment
@inject ICompositeViewEngine Engine
it is missing @using
it should be
@using Microsoft.AspNetCore.Hosting
I reported issue at https://github.com/aspnet/Scaffolding/issues/1094