首页 > 解决方案 > Microsoft.AspNetCore.Components.Forms.InputRadioGroup` 不支持类型 xxx

问题描述

我想在 blazor 中使用单选组,因此在实现编辑表单并选择其中一个单选按钮后出现此错误:

Microsoft.AspNetCore.Components.Forms.InputRadioGroup`1[EGameCafe.SPA.Models.GameModel] 不支持“EGameCafe.SPA.Models.GameModel”类型。

这是我的编辑表格:

<EditForm Model="ViewModel" OnValidSubmit="HandleCreateGroup">

            @if (ViewModel.Games.List.Any())
            {
                <InputRadioGroup Name="GameSelect" @bind-Value="Gamemodelsample">
                    @foreach (var game in ViewModel.Games.List)
                        {
                        <InputRadio Value="game" />
                        @game.GameName
                        <br />
                        }
                </InputRadioGroup>
            }

</EditForm>

@code{
        public GameModel GameModelSample { get; set; } = new();
}

和 GameModel 是:

 public class GameModel
{
        public string GameId { get; set; }
        public string GameName { get; set; }
}


标签: asp.net-coreblazorblazor-server-side

解决方案


因为在您的代码@bind-Value="Gamemodelsample"中,您试图将GameName(字符串)绑定到Gamemodelsaple(对象),这将导致类型不匹配问题。

您只需要将代码修改为:

@bind-Value="GameModelSample.GameName"

推荐阅读