小编SW2*_*702的帖子

通知所有客户添加学生并更新用户界面

我有一个 blazor Web 程序集项目和一个信号 r 服务项目,我想在添加学生时调用对 ui 的更改。目前我必须刷新页面才能看到添加内容。

学生服务.cs

public class StudentService
{
    public HubConnection connection;

    public StudentServicen()
    {    
        connection = new HubConnectionBuilder()                                            
                     .WithUrl(".../StudentsHub")
                     .Build();

        connection.StartAsync();
    }

    public async Task<List<Students>> GetAllStudents() => 
    await connection.InvokeAsync<List<Students>>("GetAllStudents"));    

    public async Task<Boolean> AddStudent(StudentData student) => 
    await connection.InvokeAsync<Boolean>("AddStudent", student);

}
Run Code Online (Sandbox Code Playgroud)

学生.razor

@inject StudentService StudentService

<ul >

    @foreach (var student in students)
    {
       <li>@student.Name</li>
    } 

</ul>

@code {  

private List<Students> students = new List<Students>();  

protected override async Task OnInitializedAsync()
{
    students = await StudentService.GetAllStudents();        
}
Run Code Online (Sandbox Code Playgroud)

学生集中在另一个项目中。

@inject …
Run Code Online (Sandbox Code Playgroud)

c# asp.net signalr blazor blazor-server-side

6
推荐指数
1
解决办法
1874
查看次数

标签 统计

asp.net ×1

blazor ×1

blazor-server-side ×1

c# ×1

signalr ×1