blazor 相关问题

Blazor是一个Web框架,允许开发人员在.NET中编写客户端代码。它是ASP.NET Core的一部分,称为“Razor Components”。

Shopify 登录问题 - 嵌入式应用程序无法正确登录

有件事让我很困惑,我在 .NET 6 上开发了一个 Blazor 应用程序,它在本地和生产环境中都能完美运行。目前它正在 Shopify 之外使用,但是,我...

回答 1 投票 0

如何在 Blazor 中创建 `AsChild` 或 `Slot`

我一直在寻找这个问题的答案。我想要的只是能够在 Blazor 中重新创建 Radix 的槽组件/asChild 模式。 例如 ... 我长期以来一直在寻找这个问题的答案。我想要的只是能够在 Blazor 中重新创建 Radix 的插槽组件/asChild 模式。 例如 <Button AsChild> <a href="/contact">Contact</a> </Button> 感谢@DanielD 让我走上正确的轨道。 我创建了一个抽象类(您不需要需要执行此操作,您只需将这些属性添加到您想要具有此功能的任何组件即可)。 public abstract class Slot : ComponentBase { [Parameter] public required RenderFragment<Dictionary<string, object>> ChildContent { get; set; } [Parameter] public bool AsChild { get; set; } } 按钮.razor.cs 指定您想要绘制的属性。 public partial class Button : Slot { private static Dictionary<string, object> _attributes => new() { { "onclick", () => Console.WriteLine("Button was clicked!") } }; } 按钮.剃须刀 为默认组件创建标记(当未使用 AsChild 时)。 @inherits Slot @if (AsChild) { @ChildContent(_attributes) } else { <button type="button" @attributes="_attributes"> @ChildContent(_attributes) </button> } 现在您可以在任何您喜欢的地方使用以下内容。 AsChild的用法: <Button AsChild> <a href="#" @attributes="context">Click me!</a> </Button> 不使用AsChild的用法: <Button> Click me! </Button>

回答 1 投票 0

blazor 静态服务器渲染本地化

如何在 Blazor 8 静态服务器渲染中设置本地化。 我是 Blazor 新手,想要在 Blazor 静态服务器渲染中制作应用程序,但在 Web 上只有交互式服务器的代码或...

回答 1 投票 0

Azure DevOps 发布在 .NET 9 上慢了 20 倍

我在 AzureDevops 上为 Blazor 解决方案创建了一个构建管道。构建代理正在我的服务器上运行。大约一个月前,我将所有项目更新到 .NET 9 并运行了构建。我们的构建时间...

回答 1 投票 0

Azure DevOps 发布在 .NET 9 上降低了 20 倍

我在 AzureDevops 上为 Blazor 解决方案创建了一个构建管道。构建代理正在我的服务器上运行。大约一个月前,我将所有项目更新到 .NET 9 并运行了构建。我们的构建时间...

回答 1 投票 0

是否有一种简单的方法可以在 .NET8 Blazor 中对嵌套对象进行表单验证?

我查看了以下解决方案,但 NuGet 包 Microsoft.AspNetCore.Components.DataAnnotations.Validation 已弃用。 两个嵌套对象之间的 Blazor 复杂验证 谢谢!

回答 1 投票 0

在 Blazor WebApp 中将身份验证状态从预渲染模式转移到交互式渲染模式

在 Blazor 9 中,AddAuthenticationStateSerialization() 和 AddAuthenticationStateDeserialization() 似乎仅在服务器项目中使用 ASP.NET Core Identity 时才起作用(如在 Visual Studio 中

回答 1 投票 0

如何在 Blazor WASM 应用程序中获取当地时间

我想在我的 Blazor WASM 应用程序中获取客户端计算机中的时间(如 Windows 11 的任务栏中显示的那样),这看起来应该很简单。 不过,我有时间...

回答 1 投票 0

扩展InputRadio添加默认css样式

我正在尝试在 Blazor 中渲染自定义单选按钮,仅向组件添加默认的 css 类。 所以我想我可以扩展 InputRadio 组件并修改

回答 1 投票 0

将自定义样式应用于 FluentUI Accordion 组件 (Blazor .NET 8)

我正在努力弄清楚如何将自定义样式应用于 FluentUI Accordion 的元素。 例如,我想更改手风琴“标题”元素的背景颜色...

回答 1 投票 0

如何通过 Blazor 组件的实例执行其状态更改。错误 - 渲染句柄尚未分配

我试图通过组件的实例更改组件的标志,但收到错误,因为渲染句柄尚未分配。 我有一个名为 PopMessage.razor 的组件 @if(isDisplay) { 我试图通过组件的实例更改组件的标志,但收到错误为 The render handle is not yet assigned。 我有一个名为 PopMessage.razor 的组件 @if (isDisplay) { <div> <span>Message</span> </div> } @code{ private bool isDisplay = false; public void PopShow() { try { isDisplay = true; StateHasChanged(); } catch (Exception ex){} } } 注册为 builder.Services.AddScoped<PopMessage>() 在另一个组件中Home.razor @page "/" @inject PopMessage _popMessage <button @onclick="PopPrint">Pop message</button> <PopMessage/> @code{ private void PopPrint() { _popMessage.PopShow(); } } 现在,单击按钮时,它会在 The render handle is not yet assigned 方法中抛出异常消息,如 PopShow。 我并没有真正理解这个问题。组件 <PopMessage/> 已加载。但是在调用消息 PopShow 时会抛出此异常。如果没有 StateHasChanged(),它不会抛出异常,但状态当然不会更新。 该错误意味着尚未在 Attach 实例上调用 PopUpComponent 并且它没有 RenderHandle。 这是由渲染器将组件附加到渲染树时提供的。 您所做的是将组件注册为 DI 服务,然后在页面中使用它。 你不能这样做。 有关更多详细信息,请参阅此问题和答案 - System.InvalidOperationException:“渲染句柄尚未分配。”在 Blazor 服务器中

回答 1 投票 0

为什么满足要求后还是会出现验证错误

我正在尝试使用 blazor 登录,但现在的问题是,每当我在 inputtext 字段中输入数据时,我都会收到验证错误“此字段是必需的”,尽管信息...

回答 1 投票 0

在 Blazor 中复选框不会保持选中状态

我在 Blazor 中有一个简单的待办事项列表应用程序,当我检查待办事项时,待办事项列表将写入 json 文件。它一直工作到最后一个复选框。最后一个复选框不会写入 json fi...

回答 1 投票 0

.NET 9 Blazor WebAssembly,逐行调试不起作用:“调试适配器意外退出”

我有一个 .NET 9 Blazor WebAssembly 应用程序。我可以向我的 C# 代码添加断点,并且可以命中断点。但是,一旦我单击 F10 或 F11 执行该行,我就会看到这个错误...

回答 1 投票 0

使用个人帐户创建 .NET 9 Blazor 项目在注册时崩溃n

我对在 .NET 9 上使用 Blazor 创建一个新项目很感兴趣。在这个项目中,我想将身份验证类型添加为“个人帐户”。为此,我使用

回答 1 投票 0

如何添加“滚动到顶部”按钮?

我需要在 Blazor 服务器端应用程序中添加滚动到顶部按钮。我找到了这篇 How To - Scroll Back To Top Button 文章,并且可以按照它进行操作,直到添加 javascript 代码。 因为我是一个

回答 1 投票 0

如何在 Blazor 应用程序中添加滚动到顶部按钮?

我需要在 Blazor 服务器端应用程序中添加滚动到顶部按钮。我找到了这篇 How To - Scroll Back To Top Button 文章,并且可以按照它进行操作,直到添加 javascript 代码。 因为我是一个

回答 1 投票 0

Blazor Quickgrid - 如何在使用 Virtualise 时添加行计数器

使用 Blazors Quickgrid。我想显示项目的行号。 它们是“ApplicationUser”项。 (id是一个引导) 它看起来像这样: 使用 Blazors Quickgrid。我想显示项目的行号。 它们是“ApplicationUser”项。 (id是一个引导) 看起来像这样: <div class="grid" tabindex="-1"> <QuickGrid Items="FilteredUsers" Virtualize="true" @ref="_gridview" > <PropertyColumn Property="@(u => u.FirstName)" Sortable="true" /> <PropertyColumn Property="@(u => u.LastName)" Sortable="true" Title="Name"> <ColumnOptions> <input type="search" autofocus @bind="LastNamefilter" @bind:event="oninput" placeholder="Last Name ..." /> </ColumnOptions> </PropertyColumn> . . . more stuff.. “过滤用户”来自: private IQueryable<ApplicationUser> FilteredUsers; private void UpdateUsers() { FilteredUsers = _rgContext.Users.Where(u => u.LastName!.Contains(LastNamefilter) && u.Email!.Contains(Emailfilter) && u.PhoneNumber!.Contains(Phonefilter) ); totalcount = FilteredUsers.Count(); } _rgcontext 是使用 OnInit 函数中创建的 contextFactory 创建的: protected override async Task OnInitializedAsync() { _rgContext = _contextFactory.CreateDbContext(); await _userService.CheckUpdateCurrentUserInfo(); UpdateUsers(); await base.OnInitializedAsync(); return; } ...并处置:(虽然不确定这是否相关...到目前为止似乎有效。 public void Dispose() { _rgContext?.Dispose(); } 我有查询中的总计数值。但我想添加一个行号。 我似乎找不到任何地方可以(比如说)获得回调来创建一个包含这样数字的列。 有什么想法吗? 最简单的选择是使用 ItemsProvider。我发现无论如何,对于使用 EF 的大型数据集效果更好。 ItemsProvider 是带有请求参数的回调。您可以使用 request.StartIndex 作为编号的基础。您可能希望用 ViewModel 包装实体来存储数字。

回答 1 投票 0

使用 Virtualize 时如何添加行计数器?

使用 Blazors Quickgrid。我想显示项目的行号。它们是应用程序用户项。 (该id是GUID) 它看起来像这样: 使用 Blazors Quickgrid。我想显示项目的行号。它们是 ApplicationUser 物品。 (该id是GUID) 看起来像这样: <div class="grid" tabindex="-1"> <QuickGrid Items="FilteredUsers" Virtualize="true" @ref="_gridview" > <PropertyColumn Property="@(u => u.FirstName)" Sortable="true" /> <PropertyColumn Property="@(u => u.LastName)" Sortable="true" Title="Name"> <ColumnOptions> <input type="search" autofocus @bind="LastNamefilter" @bind:event="oninput" placeholder="Last Name ..." /> </ColumnOptions> </PropertyColumn> ... </QuickGrid> </div> FilteredUsers来自: private IQueryable<ApplicationUser> FilteredUsers; private void UpdateUsers() { FilteredUsers = _rgContext.Users.Where(u => u.LastName!.Contains(LastNamefilter) && u.Email!.Contains(Emailfilter) && u.PhoneNumber!.Contains(Phonefilter) ); totalcount = FilteredUsers.Count(); } _rgcontext 是使用在 contextFactory 函数中创建的 OnInit 创建的: protected override async Task OnInitializedAsync() { _rgContext = _contextFactory.CreateDbContext(); await _userService.CheckUpdateCurrentUserInfo(); UpdateUsers(); await base.OnInitializedAsync(); return; } ...并处置:(虽然不确定这是否相关...到目前为止似乎有效。 public void Dispose() { _rgContext?.Dispose(); } 我从查询中获得了 totalcount 值。但我想添加一个行号。 我似乎找不到任何地方可以(比如说)获得回调来创建一个包含这样数字的列.. 有什么想法吗? 最简单的选择是使用 ItemsProvider。我发现无论如何,对于使用 EF 的大型数据集效果更好。 ItemsProvider 是带有请求参数的回调。您可以使用 request.StartIndex 作为编号的基础。您可能希望用 ViewModel 包装实体来存储数字。

回答 1 投票 0

当屏幕宽度变紧时,停止 MudBlazor 调整表格大小

我有一个 MudBlazor 表,在调整窗口大小时它会不断执行此操作: 从: 在此输入图像描述 到: 在此输入图像描述 我的代码: <

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.