You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Blazor中基于用户输入变量调用方法的异常排查求助

Blazor组件调用方法失败的修复方案

问题分析及修复点:

  • 绑定语法错误:原代码中@bind:="@kod"不符合Blazor双向绑定规范,正确写法为@bind="kod"。
  • 冗余的Task.Run使用:若Dodajelement是同步方法,直接调用即可,无需用Task.Run额外创建线程;若为异步方法,直接await调用即可,避免UI线程异常。
  • 变量访问修饰符优化:protected string kod;改为private string kod;,组件内部变量无需protected级别。
  • 新增输入校验:调用方法前判断kod是否为空,避免无效参数传入。

修复后的完整代码:

@page "/DodawanieElementu"
@using VikkingWebApp.Data;
@inject VikkingServices VikkingOkucia

<h3>DodawanieElementu</h3>
<p> dodaj okucie z bazy: </p>
<input type="text" @bind="kod" />
<button @onclick="Search">Confirm</button>

@code {
    private string kod;

    async Task Search()
    {
        if (!string.IsNullOrWhiteSpace(kod))
        {
            // 若Dodajelement是异步方法
            await VikkingOkucia.Dodajelement(kod);

            // 若Dodajelement是同步方法,直接调用:
            // VikkingOkucia.Dodajelement(kod);
        }
    }
}

内容的提问来源于stack exchange,提问作者Przemo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 05:43:18