我创建了 3 个组件,它们具有完全相同的实现,只有 1 个区别:
- 第一个组件(MyTest)与其父组件在同一个项目中实现
- 第二个(Component1)来自不同(但相同的解决方案)
- 第三个(CSInput)是从 NuGet 包中导入的。以下是同一个父级中所有 3 个的调用。
razor 组件实现如下:
<input disabled="@Disabled">
@code {
[Parameter]
public bool Disabled { get; set; }
}
父实现的片段:
// The Disabled property is coded as boolean
<MyTest Disabled="@DisableMyTest"/>
<RazorClassLibrary1.Component1 Disabled="@DisableMyTest" />
<CSInput Disabled="@DisableMyTest"/>
@code{
private bool DisableMyTest = false;
}
由于未知原因,编译器在CSInput 的 Disabled 属性上发出了 CS1503(无法从“布尔”转换为“字符串”)。知道为什么吗?非常感谢!