ไม่พบชื่อประเภทหรือเนมสเปซ 'IWebHostEnvironment' (คุณกำลังใช้คำสั่งที่ขาดหายไปหรือการอ้างอิงแอสเซมบลีหรือไม่)


11

ฉันใช้. NET Core 3.0.100; Microsoft Visual Studio Community 2019 เวอร์ชั่นก่อนหน้าตัวอย่างเวอร์ชั่น 16.4.0 1.0; Blazor-server (รุ่นเป็นทางการ)

ฉันกำลังพยายามเพิ่มการรับรองความถูกต้องและการอนุญาตลงในแอปพลิเคชันเว็บเซิร์ฟเวอร์ Blazor ของฉัน ฉันกำลังอ่านแนวปฏิบัติที่นี่https://docs.microsoft.com/en-us/aspnet/core/security/authentication/scaffold-identity?view=aspnetcore-3.0&tabs=visual-studio#scaffold-identity-into-an -empty โครงการ

(ฉันอ่านhttps://github.com/aspnet/Identity/issues/1825 ด้วย )

จากนั้นฉันคลิกขวาที่โครงการเลือกAdd\New Scaffolded Item...

ฉันอ่านไฟล์ScaffoldingReadme.txtแล้วทำตามคำแนะนำ

ฉันกด F5 เพื่อแก้ไขข้อบกพร่องฉันพบข้อผิดพลาด

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

สกรีนช็อต [! [ป้อนคำอธิบายภาพที่นี่] [4]] [4]

เพราะไฟล์\obj\Debug\netcoreapp3.0\Razor\Pages\Shared\_Layout.cshtml.g.csยืนอยู่ใน Razor Class Library Microsoft.AspNetCore.Identity.UI (3.0.0)ดังนั้นฉันไม่สามารถแก้ไขได้

จะแก้ไขได้อย่างไร?


1
คุณเคยเห็นstackoverflow.com/a/55602072/5233410
Nkosi

เป็นปัญหาอยู่แล้ว: github.com/aspnet/AspNetCore/issues/13120
Henk Holterman

คำตอบ:


36

นี่คือปัญหา

รหัสที่สร้างคือ

Microsoft.AspNetCore.Hosting
@using Microsoft.AspNetCore.Mvc.ViewEngines
@inject IWebHostEnvironment Environment
@inject ICompositeViewEngine Engine

มันหายไป @using

มันควรจะเป็น

@using Microsoft.AspNetCore.Hosting

ฉันรายงานปัญหาที่https://github.com/aspnet/Scaffolding/issues/1094

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.