Asp.net core 向现有Asp.net核心项目添加blazor组件时出现问题

Asp.net core 向现有Asp.net核心项目添加blazor组件时出现问题,asp.net-core,blazor-server-side,asp.net-blazor,Asp.net Core,Blazor Server Side,Asp.net Blazor,我们有一个现有的asp.net项目我的系统中有一个副本 asp.net核心项目的正常结构,如下所示: -Project -- Properties -- Areas -- Controllers -- Views -- ... 代码的一部分将使用blazor服务器端,但我遇到了一个奇怪的问题 我在stratup.cs文件中添加了所需的服务: app.UseEndpoints(endpoints => { endpoi

我们有一个现有的asp.net项目我的系统中有一个副本

asp.net核心项目的正常结构,如下所示:

-Project
   -- Properties
   -- Areas
   -- Controllers
   -- Views 
   -- ...
代码的一部分将使用blazor服务器端,但我遇到了一个奇怪的问题

我在stratup.cs文件中添加了所需的服务:

app.UseEndpoints(endpoints =>
        {
            endpoints.MapControllerRoute(
                name: "default",
                pattern: "{controller=Home}/{action=Index}/{id?}");
            endpoints.MapRazorPages();
            endpoints.MapBlazorHub();
        });
接下来,在项目结构的根目录中,我为blazor导入添加了一个文件:

_Imports.razor
内容如下:

@using System.Net.Http
@using Microsoft.AspNetCore.Authorization
@using Microsoft.AspNetCore.Components.Authorization
@using Microsoft.AspNetCore.Components.Forms
@using Microsoft.AspNetCore.Components.Routing
@using Microsoft.AspNetCore.Components.Web
@using Microsoft.JSInterop
然后尝试创建blazor组件,如“~/Components/Pages/component.razor” 创建razor文件后,我意识到@page或@code关键字以红色下划线表示语法错误

我试图在“~/Views/\u ViewImports.cshtml”中添加名称空间:

通常,组件的命名空间源自应用程序的根命名空间和组件在应用程序中的位置(文件夹)。如果应用程序的根命名空间为BlazorSample,且计数器组件位于Pages文件夹中:

但我在尝试构建项目时遇到以下错误:

所有这些在我的系统中都可以正常工作,但在另一个系统中执行同样的操作时,我会得到关于名称空间或@page/@code关键字的错误

这两个visual studio版本都是相同的—2019—我们使用的是netcore 3.1.402


我在谷歌上搜索了几天,但没有找到有效的解决方案。

作为替代解决方案,我决定将组件移动到blazor项目中,只使用.net核心项目中的引用。。。它在工作中没有任何区别,也没有任何问题

也许不是主要的解决方案,但目前正在努力

我很感激任何解决主要问题的方法

@using MyProjectFullName.Components.Pages