Blazor .NET 不呈现组件。它只是显示为 HTML 标记
Blazor .NET doesn't render a component. It just displays as HTML Markup
最近,我遇到了一个问题,并且能够通过清理解决方案来解决它。但现在我遇到了同样的问题,清理解决方案并不能修复我的错误。
在我的项目中,我使用模式来显示表单。因此,我创建了一个带有 EditForm 的模态组件,以在我的数据库中生成一个新实体。
<div class="modal">
<div class="modal-body">
<div class="row">
<div class="col s12">
<h5>New Item</h5>
</div>
</div>
<div class="row">
<EditForm Model="MyEntity" OnValidSubmit="OnValidSubmit" OnInvalidSubmit="OnInvalidSubmit">
<DataAnnotationsValidator />
<ValidationSummary></ValidationSummary>
<div class="input-field fixed col s12">
<InputText id="name" @bind-Value="MyEntity.Name" />
<label class="active" for="name">Name</label>
</div>
<div class="col s12">
<button class="right btn" type="submit">Create</button>
</div>
</EditForm>
</div>
</div>
<div class="modal-footer">
<button class="modal-close btn-flat">Close</button>
</div>
</div>
@code {
[Parameter]
public MyEntityClass MyEntity {get; set;}
[Parameter]
public EventCallback<Microsoft.AspNetCore.Components.Forms.EditContext> OnValidSubmit { get; set; }
[Parameter]
public EventCallback<Microsoft.AspNetCore.Components.Forms.EditContext> OnInvalidSubmit { get; set; }
}
在索引页我想使用这样的组件:
@page "/mypage"
<MyProject.Pages.Shared.MyModalComponent MyEntity="_newMyEntity" OnValidSubmit="HandleValidSubmit" InvalidSubmit="HandleOnInvalidSubmit" />
@*
Some more HTML Code ...
*@
@code{
private MyEntityClass _newMyEntity = new MyEntityClass();
void HandleValidSubmit()
{
// Write to Database ...
}
void HandleOnInvalidSubmit()
{
// Display Errormessage to User ...
}
}
Blazor 不呈现组件,它只是呈现为带有变量名称的 HTML 标记:
现在到了奇怪的部分:我在另一个页面上构建了一个 table 组件来显示复杂的数据,并且一切正常!我错过了什么吗?
我在 Visual Studio 2019 企业版 16.4.4
中使用 .NET Core 3.1 Blazor 服务器端
我找到了这种奇怪行为的原因:Visual Studio 有时在创建新的 Blazor 组件时不会将构建操作类型设置为 "Content"。更改和重建后一切正常。
最近,我遇到了一个问题,并且能够通过清理解决方案来解决它。但现在我遇到了同样的问题,清理解决方案并不能修复我的错误。 在我的项目中,我使用模式来显示表单。因此,我创建了一个带有 EditForm 的模态组件,以在我的数据库中生成一个新实体。
<div class="modal">
<div class="modal-body">
<div class="row">
<div class="col s12">
<h5>New Item</h5>
</div>
</div>
<div class="row">
<EditForm Model="MyEntity" OnValidSubmit="OnValidSubmit" OnInvalidSubmit="OnInvalidSubmit">
<DataAnnotationsValidator />
<ValidationSummary></ValidationSummary>
<div class="input-field fixed col s12">
<InputText id="name" @bind-Value="MyEntity.Name" />
<label class="active" for="name">Name</label>
</div>
<div class="col s12">
<button class="right btn" type="submit">Create</button>
</div>
</EditForm>
</div>
</div>
<div class="modal-footer">
<button class="modal-close btn-flat">Close</button>
</div>
</div>
@code {
[Parameter]
public MyEntityClass MyEntity {get; set;}
[Parameter]
public EventCallback<Microsoft.AspNetCore.Components.Forms.EditContext> OnValidSubmit { get; set; }
[Parameter]
public EventCallback<Microsoft.AspNetCore.Components.Forms.EditContext> OnInvalidSubmit { get; set; }
}
在索引页我想使用这样的组件:
@page "/mypage"
<MyProject.Pages.Shared.MyModalComponent MyEntity="_newMyEntity" OnValidSubmit="HandleValidSubmit" InvalidSubmit="HandleOnInvalidSubmit" />
@*
Some more HTML Code ...
*@
@code{
private MyEntityClass _newMyEntity = new MyEntityClass();
void HandleValidSubmit()
{
// Write to Database ...
}
void HandleOnInvalidSubmit()
{
// Display Errormessage to User ...
}
}
Blazor 不呈现组件,它只是呈现为带有变量名称的 HTML 标记:
现在到了奇怪的部分:我在另一个页面上构建了一个 table 组件来显示复杂的数据,并且一切正常!我错过了什么吗?
我在 Visual Studio 2019 企业版 16.4.4
中使用 .NET Core 3.1 Blazor 服务器端我找到了这种奇怪行为的原因:Visual Studio 有时在创建新的 Blazor 组件时不会将构建操作类型设置为 "Content"。更改和重建后一切正常。