Razor 组件未在 .NET Standard 库中正确编译
Razor components not compiling correctly in a .NET Standard library
我已将库转换为 .NET Standard 2.0 以成为 Razor 组件库:
我将 SDK 类型更改为 Razor:
<Project Sdk="Microsoft.NET.Sdk.Razor">
并添加了对 Razor 组件库的引用
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Components" Version="3.1.8" />
<PackageReference Include="Microsoft.AspNetCore.Components.Web" Version="3.1.8" />
</ItemGroup>
但是在编辑组件时我发现编译过程失败了。例如,它无法在 HTML 标记中正确映射 @bind=..
属性,并且 Razor 组件似乎无法正确编译。
这是由于缺少 _Imports.razor
文件造成的,如果您直接创建 Razor 组件库,通常会创建该文件。这会将正确的组件库带入 Razor 编译的范围。在库的根目录中创建它。
内容至少应包含这一行:
@using Microsoft.AspNetCore.Components.Web
如果需要,您也可以将其他名称空间纳入范围。
我已将库转换为 .NET Standard 2.0 以成为 Razor 组件库:
我将 SDK 类型更改为 Razor:
<Project Sdk="Microsoft.NET.Sdk.Razor">
并添加了对 Razor 组件库的引用
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Components" Version="3.1.8" />
<PackageReference Include="Microsoft.AspNetCore.Components.Web" Version="3.1.8" />
</ItemGroup>
但是在编辑组件时我发现编译过程失败了。例如,它无法在 HTML 标记中正确映射 @bind=..
属性,并且 Razor 组件似乎无法正确编译。
这是由于缺少 _Imports.razor
文件造成的,如果您直接创建 Razor 组件库,通常会创建该文件。这会将正确的组件库带入 Razor 编译的范围。在库的根目录中创建它。
内容至少应包含这一行:
@using Microsoft.AspNetCore.Components.Web
如果需要,您也可以将其他名称空间纳入范围。