小编Ren*_*ené的帖子

优先使用数据库的 Blazor

我正在尝试在 Visual Studio 2019 中使用 Blazor 构建一个简单的 CRUD 应用程序 - 我在 YouTube、PluralSight 和 Channel 9 之间观看了超过 7 个教程,并且在所有这些教程中,他们使用 Entity Framework Core 从以下位置创建数据库和表在 Visual Studio 中,这是可以理解的,因为代码优先是理想的架构。

但是,我的数据库和表已经存在,第一步,我只想将 Blazor 应用程序连接到一个表并将其读入 UI 列。

我将如何完成在 Visual Studio 2019 中导入现有数据库表的步骤?如果网络上有专门针对在 Blazor 中完成此操作的文档,请务必指出这一点,因为我无法在某些旧的 ASP.Net MVC 文档之外找到任何内容。

ef-database-first entity-framework-core blazor visual-studio-2019

8
推荐指数
2
解决办法
4848
查看次数

IIS 上的 Blazor 服务器端应用程序经常断开 WebSocket 连接

我有一个在 IIS 10 上发布的 Blazor 服务器端应用程序。当浏览到任意页面并在一分钟左右(有时只有 45 秒,有时在 1 到 2 分钟之间)后让它空闲时,模态

正在尝试重新连接到服务器...

出现几秒钟。在浏览器控制台中,日志显示

错误:连接因错误“错误:服务器超时而未收到来自服务器的消息而断开连接。”。

或者

信息:连接已断开。

由于这似乎是一个超时问题,因此我在startup.cs 中ConfigureServices添加了以下选项

services.AddServerSideBlazor()
                .AddHubOptions(options =>
                {
                    options.ClientTimeoutInterval = TimeSpan.FromMinutes(10);
                    options.KeepAliveInterval = TimeSpan.FromSeconds(3);
                    options.HandshakeTimeout = TimeSpan.FromMinutes(10);
                });
Run Code Online (Sandbox Code Playgroud)

但这并不能解决问题。

我还转到了 IIS 中站点的高级设置,并将连接超时从默认的 120 秒增加到 600 秒。这也没有帮助。

这些频繁断开连接仅发生在 IIS 10 上托管的实时站点上。如果我使用 Visual Studio 在本地启动应用程序,则连接是稳定的。

我所缺少的任何提示将不胜感激!

更新

正如@agua from mars 在下面的评论中所建议的那样,我更改了这样的传输类型

app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllers();
                endpoints.MapBlazorHub(options => { options.Transports = HttpTransportType.LongPolling; });
                endpoints.MapFallbackToPage("/_Host");
            });
Run Code Online (Sandbox Code Playgroud)

通过此更改,连接仍处于关闭状态。控制台日志显示

信息:(LongPolling 传输)轮询被服务器终止。

我也试过HttpTransportType.ServerSentEvents,它根本不起作用,但给出了这个错误 …

iis websocket blazor blazor-server-side

6
推荐指数
2
解决办法
3293
查看次数