C# Blazor字符串列表输入绑定

C# Blazor字符串列表输入绑定,c#,html,blazor,C#,Html,Blazor,我试图显示一个字符串列表,我希望用户能够编辑该列表以对对象进行更改,但当我在修改输入字段后查看该列表时,尚未进行更改 如何绑定字符串列表 @foreach (var message in UserMessageService.GetSomeData()) { <tr> <td><input type="text" bind="@message.Username" value="@message.Username" onblur="S

我试图显示一个字符串列表,我希望用户能够编辑该列表以对对象进行更改,但当我在修改输入字段后查看该列表时,尚未进行更改

如何绑定字符串列表

 @foreach (var message in UserMessageService.GetSomeData())
    {
    <tr>
        <td><input type="text" bind="@message.Username" value="@message.Username" onblur="SaveMessages"/></td>
        <td><input type="text" bind="@message.Message" value="@message.Message" onblur="SaveMessages"/></td>
    </tr>
    }
@foreach(UserMessageService.GetSomeData()中的var消息)
{
}

使用正确的Blazor语法:

<input
type="text" @bind="@message.Message"/>

如果需要对模糊执行功能:

<input value="@message.Message"
     @onchange="@((ChangeEventArgs __e) =>  
     { message.Message  = __e.Value.ToString());
     SaveMessages(); })" />


更多信息:

我犯了一个愚蠢的错误,问题不在于我的语法。我犯了绑定到我的服务而不是本地变量的错误,因此当我离开焦点时,它无法更新,只能从服务中检索

我只是在下面添加了局部变量

        @foreach (var message in dataVariable)
        {
        <tr>
            <td><input type="text" @bind="message.Username" /></td>
            <td><input type="text" @bind="message.Message" /></td>
        </tr>
        }

   @code {
    private List<someData> dataVariable;

    protected override void OnInitialized()
    {
        TableSeats = UserMessageService.GetSomeData();
    }
}
@foreach(dataVariable中的var消息)
{
}
@代码{
私有列表数据变量;
受保护的覆盖无效OnInitialized()
{
TableSeats=UserMessageService.GetSomeData();
}
}