工具栏布局.cs
public class ToolbarLayoutBase : LayoutComponentBase
{
public string Text { get; set; }
public virtual void NewData()
{
Console.WriteLine("Save Click " + Text);
}
public virtual void UpdateData()
{
Console.WriteLine("Update Click");
}
}
Run Code Online (Sandbox Code Playgroud)
工具栏布局 Razor
@inherits ToolbarLayoutBase
BtnSave,BtnUpdate,BtnRemove HTML Button
Run Code Online (Sandbox Code Playgroud)
编辑页面.cs
public class EditPageBase : ToolbarLayoutBase
{
public override void UpdateData()
{
base.UpdateData();
}
}
Run Code Online (Sandbox Code Playgroud)
编辑页面剃刀
@inherits EditPageBase
@page "/editpage"
<ToolbarLayout />
Run Code Online (Sandbox Code Playgroud)
我有如上图所示的组件。我想使用我的“ToolbarLayout”组件作为基础组件,我需要方法等,我想改变。就像WinForm中的Base Form结构一样。
我的任务是运行 CLI 命令(在客户端系统中)并在 Web 应用程序上向用户显示输出。[假设,一个基于网络的 cmd.exe ]
基于对 WebAssembly 功能的了解,我使用 .NET CORE Blazor WebAssembly 来完成该任务。但是在客户端中使用System.Diagnostics.ProcessStartInfo会引发运行时错误Native error= Cannot find the specified file。
如果我对 WebAssembly 的理解有误,请告诉我。另外,建议我如何完成任务?
Razor 页面中使用的代码:
protected override async Task OnInitializedAsync()
{
quiz = await Http.GetJsonAsync<List<QuizItem>>("Quiz");
// My actual code...
string process = @"C:\Windows\System32\cmd.exe", arguments = "start", workingFolder = ".";
System.Diagnostics.ProcessStartInfo startinfo = new System.Diagnostics.ProcessStartInfo {
FileName = process, Arguments = arguments, WorkingDirectory = workingFolder,
CreateNoWindow = false, UseShellExecute = false,
RedirectStandardError = true, RedirectStandardOutput …Run Code Online (Sandbox Code Playgroud) 在 Blazor WebAssembly 中,Console.WriteLine将日志写入 Javascript 控制台,并Console.Error.WriteLine写入错误。有没有办法在不使用 Javascript 的情况下编写警告或信息 - Blazor 相当于 Javascriptconsole.warn或console.info?
(一般来说,对于任何给定的函数调用,如何找出 Javascript 互操作是否有 Blazor 替代方案?)
我正在尝试与 blazor 合作进行一个学习项目。安装 blazorise 后,导航栏无法像以前一样工作。一旦我启动了 web 应用程序,导航栏就没有显示,当我最小化 chrome 时,导航栏-toggler-icon 就会出现,点击该图标后,我可以看到我的导航栏。
在 NavMenu.razor 页面上,我只添加了一些导航链接(见下面的代码)。所以css类是原始的。我在 chrome 上没有任何错误。侧边栏启动后生成的html是:
<div class="sidebar"><!--!-->
<!--!--><div class="top-row pl-4 navbar navbar-dark"><!--!-->
<!--!--><a class="navbar-brand" href="">Rappenspalter</a>
<button class="navbar-toggler"><!--!-->
<span class="navbar-toggler-icon"></span>
</button><!--!-->
</div><!--!-->
<div class="collapse"><!--!-->
<ul class="nav flex-column"><!--!-->
<li class="nav-item px-3"><!--!-->
<!--!--><a href="" class="nav-link active"><!--!-->
<span class="oi oi-home" aria-hidden="true"></span> Home
</a><!--!-->
</li><!--!-->
<li class="nav-item px-3"><!--!-->
<!--!--><a href="counter" class="nav-link"><!--!-->
<span class="oi oi-plus" aria-hidden="true"></span> Counter
</a><!--!-->
</li><!--!-->
<li class="nav-item px-3"><!--!-->
<!--!--><a href="fetchdata" class="nav-link"><!--!-->
<span class="oi oi-list-rich" aria-hidden="true"></span> Fetch data
</a><!--!-->
</li><!--!-->
<li class="nav-item px-3"><!--!--> …Run Code Online (Sandbox Code Playgroud) "APIs": {
"API-1": "http://localhost:5000/student",
"API-2": "http://localhost:5001/teacher"}
Run Code Online (Sandbox Code Playgroud)
我在 launchSettings.json 文件中创建了这些属性。现在我需要访问 Student.razor 页面中的 API-1 和 API-2 值。我尝试像这样使用它..
List<Student> students = await http.GetFromJsonAsync<List<Student>>("API-1");
Run Code Online (Sandbox Code Playgroud) 所以我正在编写一个带有 asp.ner 核心标识的 Blazor webassembly 应用程序。我需要获取当前用户的 ID,而不是 Identy 中的方法提供的用户名。
方法
语境。用户.身份.名称
提供用户名,但我需要模型/表中 fk 的 ID。
我不能使用用户名,因为用户名可能会改变。
我已经在网上搜索过,但是我一直只看到返回的用户名。
任何帮助将不胜感激。
entity-framework asp.net-core blazor blazor-client-side blazor-webassembly
我的项目是在Blazor WASM 中创建的(我不想使用 Blazor 服务器)
我想从 wwwroot 读取 XSD 文件:
在我的 XsdService.cs - C# 类中,我正在尝试:
string pathToXsd = Path.Combine("plcda","extPL_r2.xsd");
string transformataHTML = System.IO.File.ReadAllText(pathToXsd);
Run Code Online (Sandbox Code Playgroud)
但是,我总是收到错误:
Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100]
Unhandled exception rendering component: Could not find a part of the path "/plcda/extPL_r2.xsd".
System.IO.DirectoryNotFoundException: Could not find a part of the path "/plcda/extPL_r2.xsd".
Run Code Online (Sandbox Code Playgroud)
那么是否有机会将自定义/静态/本地文件包含到 Blazor WASM 中?即使应用程序离线也能阅读它们?
c# progressive-web-apps blazor blazor-client-side blazor-webassembly
我从一个 Visual Studio 模板开始,一个新的 Blazor WebAssembly,以身份验证和 Web API 作为服务器端。
我的问题是保护所有页面而不仅仅是某些页面。我尝试添加:
@using Microsoft.AspNetCore.Authorization
@attribute [Authorize]
Run Code Online (Sandbox Code Playgroud)
到 MainLayout 而不是所有页面,但没有任何运气。我想这样做是因为我正在写一个管理员,如果没有连接,我根本不希望人们看到布局
如何在 Blazor SPA 上嵌入 Leaflet 地图、使用 JSInterop、应定义哪些对象以及如何将表示在地图上单击的位置的数据从 JavaScript 传递到 Blazor
leaflet blazor blazor-server-side blazor-client-side blazor-webassembly
例如,如果我有一个底层数据类型为 int 的 InputNumber,我想显示一条消息,指出不允许大于 int.MaxValue 的数字。目前,如果我要尝试任何大于整数最大值的数字,我会收到一条默认消息:“该字段必须是数字”。该消息显然不正确,我想更改它。有没有办法在 Blazor 中做到这一点?
blazor blazor-server-side blazor-client-side asp.net-blazor blazor-webassembly
我想在每次单击按钮时通过动态添加其他 blazor 组件来更新视图。我怎样才能做到这一点。
例如:每次单击组件 1 上的按钮时,应立即将组件 2 添加到组件 1 中。
我目前正在开发一个使用 Blazor WebAssembly 作为前端框架的项目,但是,我认为我在状态管理方面遇到了一些复杂情况。这个问题发生在一个大型复杂的解决方案中,因此我重新创建并简化了它,这样我就可以在这里简洁地描述它,而不会显得臃肿。
我有一个包含两个组件的页面:朋友列表和关注者列表,每个组件都有一个按钮来切换按升序或降序对列表进行排序。
如果我重写并在FollowerList组件内部的OnParametersSetAsync上放置一个断点,然后单击FriendList组件的排序按钮,它会命中我在FollowerList组件上设置的断点。
我的印象是,只有当提供给该组件的属性发生更改或其状态发生更改时,才会在该组件上调用OnParametersSet/Async。在下面的代码中,您可以看到我有两个单独的列表,一个被馈送到一个组件,一个被馈送到另一个组件,所以我不确定如何在未触及的组件上触发此方法......
因此我的问题是:为什么它会在不相关的组件上遇到断点?这是故意行为吗?
页面预览
索引剃刀
@page "/"
<button value="Sort Friends" @onclick=SortFriends>Sort Friends</button>
<FriendList Friends=SortedFriends />
<button value="Sort Followers" @onclick=SortFollowers>Sort Followers</button>
<FollowerList Followers=SortedFollowers />Run Code Online (Sandbox Code Playgroud)
Index.cs(隐藏代码)
using StateManagementTest.Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace StateManagementTest.Pages
{
public partial class Index
{
public List<Friend> MyFriends { get; set; }
public List<Friend> SortedFriends { get; set; }
public List<Follower> MyFollowers { get; …Run Code Online (Sandbox Code Playgroud)blazor ×10
c# ×3
.net ×2
asp.net-core ×2
.net-core ×1
asp.net ×1
blazorise ×1
bootstrap-4 ×1
leaflet ×1
webassembly ×1