问题标签 [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.
razor - 我可以在 Blazor 中编写一个在视图中动态呈现元素的函数吗?
我有一个名为 BusinessUnit 的对象,其中包含一个子业务单位列表,我需要一个函数来为其父级下的每个子级呈现 <li> 元素。我到目前为止的代码如下:
嵌套的 foreach 与第一个基本相同,但对它们进行硬编码限制了我可以拥有的层次级别。我需要这样的功能:
有谁知道我可以为最后一个代码块中的注释做什么?我可以使用 C# 代码动态呈现列表标记吗?比:)
c# - Blazor route with encrypted parameters
How can I make my Blazor application to receive the encrypted parameters that contain the encoded special characters such as "/"
and "+"
.
My screenshot can be found here
How should I configure the Blazor parameters, so that they are split and translated correctly?
c# - 如何将数据从控制器传递到 Blazor 上的视图?
我尝试使用 Blazor(服务器端)创建一个项目并将视图创建为 .razor,我还添加了控制器。如何将数据从控制器传递到视图 .razor ?
我想我可以在控制器中创建一个公共变量,即交互控制器和.razor。但我不知道代码
asp.net-identity - Jwt 身份验证在 Blazor 服务器端不起作用
我在具有角色和所有内容(使用身份)的 Blazor 客户端托管项目中使用了 Jwt 身份验证,但是当我在 Blazor 服务器端执行相同操作时它不起作用,例如在我在标头中设置令牌之后:
IsAuthenticated 返回 false,当我导航到主页(导致刷新)时,IsAuthenticated 仍然返回 false,并且无法通过 HttpContext.User.Identity.Name 访问用户名!是否有解决方法。(Blazor 服务器端预览版 6 中的默认身份验证仅限于本地化和其他内容,我不想使用它)
c# - 如何将 Razor 组件集成到具有多个路由的现有 Razor Pages Asp.net Core 项目中
我有一个现有的 Razor Page asp.net Core 2.2 项目我正在尝试移植到 asp.net core 3(我知道这仍处于预览阶段,但 RC 指日可待,我只是在复习)这是一个基本项目有几个简单的页面和这些页面的一些路由。我可以让组件正确呈现,但动态内容的 SignlaR 连接仅适用于索引页面,无论我在哪里注入 blazor js
我的 startup.cs 看起来像这样
我创建了我的 _imports.razor 文件,其中包含...
...在我的 _Layout.cshtml 文件中,我放置了对 blazor 脚本的引用...
在我的索引和子页面上,我都这样调用组件......
在站点的索引页面上,一切正常,通过 SignalR 使用动态服务器执行代码呈现 CSS 和 HTML。但是一旦转到另一个页面或路由,CSS 和 HTML 仍然呈现,但动态服务器端内容停止,即使我已将 blazor.server.js 放置在全局布局中。这是否不适用于链接到父布局页面的所有子页面和路由?
token - IDataProtector Unprotect:输入不是有效的 Base-64 字符串
我在使用 Identity ConfirmEmailAsync 时遇到问题,并且总是返回 Invalid Token。所以我写了一个自定义的 TokenProvider。一方面我有这个代码:
在 ConfirmEmail 页面的另一侧接收 UserID 和 Token 作为输入 Route 参数:
在创建令牌的方法末尾的自定义 TokenProvider 中,我拥有:
并且在验证方法的开头有:
每次我单击确认链接并且代码到达此行时,我都会收到此错误:
输入不是有效的 Base-64 字符串,因为它包含非 base 64 字符、两个以上的填充字符或填充字符中的非法字符。"}
当我将 GenerateAsyncEmail 方法末尾的字节转换为 base64string 时,为什么会收到此错误?同样在我的启动类中: services.AddDataProtection(); 我将它注入到 tokenprovider 类。
我确定这是 Blazor 服务器端组件的输入参数中的错误。
identityserver4 - 如何创建 API/IdentityServer/Blazor(服务器端)应用程序?
我试图自己构建这个应用程序,但在此过程中遇到了几个绊脚石。我认为最好退后一步,更深入地了解我正在尝试创建的内容。似乎没有任何关于如何制作我正在寻找的东西的文档。(除非有人能指出我可能错过的正确位置)
最终我想要的是让 Blazor(服务器端)应用程序进行 API 调用以使用应用程序中的数据,然后让 IdentityServer4 封装身份验证。我需要将 Azure 和 ASP.net Identity 作为可能的身份验证方法。
我已经尝试过并且能够创建一个也具有本地 API 的 IdentityServer4。我可以从邮递员那里打电话来获取令牌等。但是,当谈到将 Blazor(服务器端)应用程序绑定到 IdentityServer4 时,我感到很困惑。
我试图具体地问这个问题,但根本没有得到任何结果。我希望也许这个更大的视角可能会有所帮助。
odic-client.js 似乎是从 IdentityServer4 回调中获取数据的方法,但是,这似乎与 Blazor(服务器端)中的 .NET 授权不太吻合。我如何让这些一起工作。
entity-framework-core - Entity Framework Core 查询总是返回缓存的数据
我使用 blazor 服务器端并将我的 DbContext 注册为瞬态,我也将数据访问类注册为瞬态,但如果参数未更改,EF Core 始终返回缓存数据,除非在查询之前有更新,否则它会返回新数据。
每次调用每个数据访问方法而不是依赖注入时,我都尝试创建一个 DbContext 实例,但它也返回缓存的数据。
这是达尔:
或者:
如何解决这个问题呢?
asp.net-core - 如何在服务器端 Blazor 中通过 HttpContext 注销
我HttpContext
在 Blazor 服务器端视图中访问以手动注销。我将此行添加到Startup.cs
:services.AddHttpContextAccessor();
并将其注入到视图中@inject IHttpContextAccessor HttpContextAccessor
。我有一个尝试执行此代码的注销按钮:
但我收到以下错误消息:
我怎样才能防止这个错误?