如何确定Signal-R消息的实际大小

3

我有一个组件库,其中一个功能是将大文件从JS传递到C#代码。 我将文件分成了块,但需要知道应使用哪个块大小。

默认消息大小为32 KB,但用户可以在其应用程序中更改它:

services.AddSignalR(o => {
   o.MaximumReceiveMessageSize = long.MaxValue;
});

我如何在我的库代码中确定消息的大小?

1个回答

3
在服务器端,将IOptions<HubOptions> options注入到服务或控制器中。
var maximumReceiveMessageSize = options.Value.MaximumReceiveMessageSize;

使用以下代码进行注入:@inject Microsoft.Extensions.Options.IOptions<Microsoft.AspNetCore.SignalR.HubOptions> Options - Eugene Maksimov
1
@EugeneMaksimov 是的,这对于 .razor 页面是可行的,然而在服务中它只是服务构造函数的一个参数。 - Brian Parker

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接