Blazor .NET 8 EditForm中Id字段丢失问题及解决办法
Blazor .NET 8 编辑表单Id字段丢失问题及解决方法
我在.NET 8.0版本的Blazor中创建了一个简易的数据编辑表单,代码如下:
<EditForm Model="Input" method="post" OnValidSubmit="Save" FormName="Edit"> <DataAnnotationsValidator /> <h2>Edit</h2> <hr /> <ValidationSummary class="text-danger" role="alert" /> <div class="form-floating mb-3"> <InputText @bind-Value="Input.A" class="form-control" aria-required="true" placeholder="A" /> <label for="nome">A</label> <ValidationMessage For="() => Input.A" class="text-danger" /> </div> <div class="d-flex justify-content-end"> <button type="submit" class="btn btn-lg btn-primary">Save</button> </div> </EditForm>
其中Input是我的ConfigurationDTO模型,包含多个字段。问题在于Save事件中Id字段丢失,该字段未包含在EditForm内,我尝试使用简单隐藏字段绑定但无效:
<input type="hidden" @bind-value="Input.Id" />
请问保留Id字段的正确方式是什么?
2023年11月29日更新
我找到了该问题的解决方案:需使用name属性为Input.Id的隐藏输入框绑定数据,仅使用Id作为name无效。我认为这是临时的变通方案,已在GitHub提交相关问题。
内容的提问来源于stack exchange,提问作者erikscandola
相关产品推荐
相关产品推荐

