问题标签 [blazor-server-side]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2038 浏览

c# - 通过依赖注入获取连接字符串

我正在开发一个 blazor 应用程序。我想在一个类中拥有连接字符串和其他一些键作为服务。

为此,我创建了一个界面

在我的课堂上,我想要这样的东西

我可以将其注册为服务

但是在 DbConnector 类里面它说

字段初始化程序不能引用非静态字段、方法或属性 DbConnector.Configuration

请原谅我的编码模式,因为我是 DI 概念的新手。请建议是否有另一种更好的方法来做到这一点。

0 投票
2 回答
933 浏览

c# - Blazor AD 身份验证安全句柄已关闭

我正在尝试使用 Blazor(服务器端和 .net core 3.0 preview-6)进行 AD 身份验证。

当我添加时,@attribute [Authorize(Roles = "DomainUsers")]我收到以下错误。

如果我更改为 Policy,我会收到同样的错误。但是,如果我只使用[Authorize]我不会收到错误。

当我单击菜单中的链接时会发生这种情况。如果我在浏览器中编写直接路径,我会按预期工作。

错误:System.ObjectDisposedException:安全句柄已关闭。对象名称:'SafeHandle'。在 System.Runtime.InteropServices.SafeHandle.DangerousAddRef(Boolean&success) 在 System.StubHelpers.StubHelpers.SafeHandleAddRef(SafeHandle pHandle, Boolean&success) 在 Interop.Advapi32.GetTokenInformation(SafeAccessTokenHandle TokenHandle, UInt32 TokenInformationClass, SafeLocalAllocHandle TokenInformation, UInt32 TokenInformationLength, ) 在 System.Security.Principal.WindowsIdentity.GetTokenInformation(SafeAccessTokenHandle tokenHandle, TokenInformationClass tokenInformationClass, Boolean nullOnInvalidParam) 在 System.Security.Principal.WindowsIdentity.get_User() 在 System.Security.Principal.WindowsIdentity.b__51_0() 在 System.Security。 Principal.WindowsIdentity。
在 System.Security.Claims.ClaimsIdentity.HasClaim(String type, String value) 在 System.Security.Claims.ClaimsPrincipal.IsInRole(String role) 在 System.Security.Principal.WindowsPrincipal.IsInRole(String role) 在 Microsoft.AspNetCore。 Authorization.Infrastructure.RolesAuthorizationRequirement.<>c__DisplayClass4_0.b__0(String r) at System.Linq.Enumerable.Any[TSource](IEnumerable 1 source, Func2 predicate) at Microsoft.AspNetCore.Authorization.Infrastructure.RolesAuthorizationRequirement.HandleRequirementAsync(AuthorizationHandlerContext context, RolesAuthorizationRequirement 要求)在 Microsoft.AspNetCore.Authorization.AuthorizationHandler1.HandleAsync(AuthorizationHandlerContext context) at Microsoft.AspNetCore.Authorization.Infrastructure.PassThroughAuthorizationHandler.HandleAsync(AuthorizationHandlerContext context) at Microsoft.AspNetCore.Authorization.DefaultAuthorizationService.AuthorizeAsync(ClaimsPrincipal user, Object resource, IEnumerable1 个要求)在 Microsoft.AspNetCore.Components.ComponentBase.CallStateHasChangedOnAsyncCompletion(任务任务)在 Microsoft.AspNetCore.Components.AuthorizeViewCore.OnParametersSetAsync() 的 Microsoft.AspNetCore.Components.AuthorizeViewCore.IsAuthorizedAsync(ClaimsPrincipal user)。 ComponentBase.RunInitAndSetParametersAsync()

0 投票
3 回答
956 浏览

signalr - Blazor 应用程序的哪种托管模型具有与远程 SQL Server 对话的动态 UI?

如果您想移植一个“旧版” ASP.NET 应用程序,该应用程序通过System.Data.SqlCient在 a 的代码隐藏中运行的方法从远程 SQL Server 实例获取数据HttpHandler(从服务器返回的数据被 json 化并注入 UI 小部件,例如 kendoUI),什么是合适的 Blazor 托管模型?

从 Visual Studio 2019 Preview 提供的描述来看Blazor (server-side)

...此模板可用于具有丰富动态用户界面的 Web 应用程序...

Blazor (server-side)似乎是正确的选择。

但是确实SignalR给你一种使用方式Blazor (ASP.NET Core hosted)吗?Visual Studio 说这个托管模型“在 WebAssembly 上运行并托管在 ASP.NET Core 服务器上”,但我不确定这到底意味着什么。WebAssembly 在哪里运行?客户?服务器?两个地方?

可以SignalRBlazor (ASP.NET Core hosted)模型一起用于创建从服务器WebAssembly端到客户端的管道,WebAssembly从而消除对HttpHandler?

StackOverflow 上对 SignalR 的描述表明它的功能几乎是神奇的:

ASP.NET SignalR ... 使向应用程序添加实时 Web 功能变得异常简单...让您的服务器端代码在发生时将内容实时推送到连接的客户端。
[我的重点]

暂时忽略“实时发生”短语与问题无关,可以使用相同的管道将任何(小型)数据集推送到“连接的客户端”吗?这是一个遗留的“内部网”应用程序,我要问的是,顺便说一句,只有几十个用户。

0 投票
0 回答
73 浏览

blazor - 如何将 Blazor ASP.NET CORE HOSTED vS2019 模板项目部署到 Azure?

我已经想出了如何部署服务器端和客户端模板,但不是这个。

我试图将 BLAZORCORE.SERVER 作为 SELF CONTAINED 发布到应用服务,但出现错误

严重性代码描述项目文件行抑制状态错误资产文件“C:\Users\punko\source\repos\BlazorCore\BlazorCore.Client\obj\project.assets.json”没有针对“.NETStandard,Version=”的目标v2.0'。确保恢复已运行,并且您已在项目的 TargetFrameworks 中包含“netstandard2.0”。BlazorCore.Server 0

0 投票
1 回答
544 浏览

javascript - 如何在服务器端 Blazor 中使用 Bing Javascript 地图?

我正在尝试在新的 (3.0.0-preview6.19307.2) Blazor server-side application中使用Bing JavaScript Map 控件。我已经在 Blazor 的早期版本和客户端应用程序中进行了这项工作。

当前的Blazor JavaScript 互操作指南不建议需要任何新步骤,但是当我在 _Hosts.cshtml的正文中添加以下部分并调用createMap函数时,我收到一条错误消息

Microsoft.AspNetCore.Components.Browser.Rendering.RemoteRenderer:

警告:未处理的异常呈现组件:未定义“Microsoft”

ReferenceError: 'Microsoft' 未在 window.createMap ( https://localhost:44372/:79:9 )中定义

此代码在放置在等效客户端大小的 Blazor 项目的 index.html 中时确实可以正常工作,因此我猜测需要一些额外的步骤才能将地图导出到 Microsoft 命名空间。谁能建议我缺少什么?

0 投票
1 回答
2474 浏览

c# - 使用 onclick 函数传递参数时,Blazor 不刷新 UI

在 Blazor ServerSide Asp.net core 3.0 Preview 6 中,UI 不会刷新。我以 counter.razor 为例进行了更改。如果单击“将计数器设置为 ...”按钮,则不会刷新计数器。当您单击“单击我”按钮(没有参数)时,UI 会刷新,并且 1 会添加到先前单击的计数器中。

按钮似乎工作,但 UI 没有刷新。

有什么建议可以解决这个问题还是 Blazor 中的错误?

0 投票
1 回答
3695 浏览

blazor - 发生异常时整个 Blazor Web 应用程序停止工作

请就以下问题向我提供任何合适的解决方案,

当 blazor 应用程序抛出任何异常时,整个应用程序都会关闭并且没有链接正在工作,直到我可以再次通过工作室运行应用程序。

这个问题怎么办?

谢谢和最好的问候

已编辑

(为了提供所要求的信息)

重现步骤:

  1. 创建一个 blazorserverside 应用程序:

  2. 修改 IncrementCount

Counter.razor

  1. 按下Click Me按钮 5 次以引发错误。

  2. 尝试导航到其他应用程序页面(主页、获取数据)没有任何反应,因为它在客户端上静默失败。

附加信息

配置Startup.cs错误时:

堆栈跟踪错误:

0 投票
0 回答
745 浏览

asp.net-core - 服务器端 Blazor 身份验证

如何从服务器端 Blazor 应用程序中的剃刀登录页面设置 HttpContext.User?

用户登录时从 Active Directory 中获取用户凭据。登录页面的原因是我希望允许人们从域外部登录(如果 ar 在客户端或类似位置)。

或者我在 Blazor 中使用的不是 HttpContext.User 吗?

0 投票
3 回答
388 浏览

c# - How to get local data source in server side applications?

I am using blazor server side application. In that I need to refer local dataSource.

I have used the Http as like default client side sample.

But I have been facing the issue like below, enter image description here

Can anyone guide me to fix this?

0 投票
1 回答
257 浏览

asp.net-core - 超链接未加载页面但显示已选中

ASP,net core3.0 服务器端 Blazor 应用程序。选择页面中的链接后。所选页面不会加载,但名称会显示在地址栏中。我必须在浏览器中单击“刷新”才能加载页面。

我尝试将主页链接从“”更改为“/”,最后在“/Home”的主页中添加了第二个页面指令并添加了它。

一切都加载到开发环境中就好了。但在 Azure 中,它的反应是这样的。

导航菜单与模板相同,我什至离开了天气页面,因为我想稍后实际使用它。

- -更新 - -

我收到错误消息:

如果连接未处于“已连接”状态,则无法发送数据

在浏览器控制台中。我在 Google 上找到了这个,但每个人都说这在以前的预览版本中已修复。