C# 如何处理在Blazor webassembly中更改数据的并发用户
我目前对Blazor webassembly的理解是,用户加载一个应用程序,对web API进行一次初始调用,并检索要显示的数据集。然后,用户可以在本地与数据交互,并且仅在用户插入、更新或删除项目时调用API。除了初始调用之外,不需要进一步的“Get”调用,因为数据的状态是本地加载的 如果期望多个并发用户与同一数据集交互,该怎么办?传统上,在标准web应用程序中,每当重新加载页面时,数据集的外部更改都会很快可见,并且从后端存储检索到新的数据集。在某些情况下,如果期望用户长时间坐在页面上而不重新加载,则可能需要引入轮询C# 如何处理在Blazor webassembly中更改数据的并发用户,c#,blazor,C#,Blazor,我目前对Blazor webassembly的理解是,用户加载一个应用程序,对web API进行一次初始调用,并检索要显示的数据集。然后,用户可以在本地与数据交互,并且仅在用户插入、更新或删除项目时调用API。除了初始调用之外,不需要进一步的“Get”调用,因为数据的状态是本地加载的 如果期望多个并发用户与同一数据集交互,该怎么办?传统上,在标准web应用程序中,每当重新加载页面时,数据集的外部更改都会很快可见,并且从后端存储检索到新的数据集。在某些情况下,如果期望用户长时间坐在页面上而不重新加
我不确定Blazor世界中处理此类用例的最佳实践是什么。对web API的轮询是一种可接受的解决方案吗?我应该让SignalR通知客户数据集中的更改吗?有没有我忽略的内置机制?我认为Blazor在这方面与其他框架没有什么不同。如果要在浏览器上编辑对象,则有两种选择:
关于刷新数据的问题,一般的做法似乎是在初始化组件时获取数据,进行更改,然后将其保存回去。很少有人会想在这两者之间重新取得联系,尽管你可以随心所欲地经常这样做。但这也会一次又一次地刷新用户界面。经过一些研究,在Blazor Webassembly中实现这一点的唯一标准、公认的方法是使用