Ray*_*Ray 2 enums asp.net-core blazor blazor-webassembly
我正在创建一个 Blazor WebAssembly 应用程序,我有一个枚举,我想将其作为参数传递给我的 Blazor 组件,如下所示
public enum EMenu
{
Menu1 = 1,
Menu2 = 2,
Menu3 = 3,
}
[Parameter] public EMenu Id { get; set; }
<NavMenu id="menu1" />
Run Code Online (Sandbox Code Playgroud)
这EMenu
是我的枚举,Id
是我的NavMenu
组件上的参数。但它会出错并Specified cast is not valid
显示消息。
我用谷歌搜索并看到这个 GitHub 问题https://github.com/dotnet/aspnetcore/issues/19139并根据它,当您在枚举值前面加上枚举名称时,以下内容应该有效
<NavMenu id="EMenu.Menu1" />
Run Code Online (Sandbox Code Playgroud)
但它对我不起作用,同样的错误。有人可以帮忙指出出了什么问题吗?
如果您的 NavMenu 组件上定义了此参数属性
[Parameter] public EMenu Id { get; set; }
Run Code Online (Sandbox Code Playgroud)
然后实例化 NavMenu 组件,如下所示:
<NavMenu Id="EMenu.Menu1"/>
Run Code Online (Sandbox Code Playgroud)
Id
而不是像id
您所做的那样...Id
是以大写字母开头的组件参数。
您的枚举类应该位于应用程序的根文件夹中。
归档时间: |
|
查看次数: |
4773 次 |
最近记录: |