默认的Blazor scaffolded代码在.razor文件中混合了C#代码和标记代码。 在这段视频https://brianlagunas.com/lets-learn-blazor-mvvm-with-blazor/中,它介绍了适用于blazor的MVVM。在.razor文件中,您只需要添加以下两行。 @using ViewModels
@inject ViewModel1 ViewModel C#类ViewModels.ViewModel1是ViewModel类。并且.razor可以绑定参数属性。 namespace ViewModels
{
public class Vie
我有一个名为RankingCell的Razor组件,它是用一个C#类完全定义的。没有任何与.razor 相关联的文件。
// RankingCell.razor.cs
using Microsoft.AspNetCore.Components;
using Microsoft.AspNetCore.Components.Rendering;
namespace MyProj {
public class RankingCell: ComponentBase {
// Some parameters and properties
[Parameter]
我有一个相当标准的Razor项目,我最近在这个项目中引入了Blazor组件。我添加了_Host.cshtml、App.razor和其他要求,以使Blazor正常工作。当我到达一个完全属于Blazor组件的端点时,Blazor组件工作得很好。但是,我希望使用以下内容将Blazor组件嵌入到我当前的.cshtml页面中
@(await Html.RenderComponentAsync<EditorComponent>(RenderMode.Server, new { Id = Model.Id}))
在我的cshtml页面上。这个语法可以很好地呈现组件,但是在我的OnAfterRen
我已经阅读并研究了一个类似的问题Blazor template with menu across the top,但是我仍然不明白为什么在Visual Studio中使用Blazor模板创建一个简单的顶部菜单并不容易。我在MainLayout.razor中使用这个简单的代码来测试当我运行代码时容器会是什么样子: @inherits LayoutComponentBase
<div class="container-fluid">
<nav class="navbar navbar-expand-sm navbar-dark bg-dark&