IIS和独立应用程序在blazor页面上设置参数时崩溃
我在asp.net core 3.1上新生成的blazor服务器应用程序中创建了以下组件作为.razor文件: 如果您通过IIS Express或.exe单机版应用程序访问页面IIS和独立应用程序在blazor页面上设置参数时崩溃,blazor,iis-express,Blazor,Iis Express,我在asp.net core 3.1上新生成的blazor服务器应用程序中创建了以下组件作为.razor文件: 如果您通过IIS Express或.exe单机版应用程序访问页面/p,则会因访问冲突而崩溃: iisexpress.exe“wurde mit代码-1073741819(0xc0000005)”访问权限 “比恩德特” 调试时,在子组件上设置EventCallBack后,它看起来会崩溃 parent.razor: @page "/P" <h3>Paren
/p
,则会因访问冲突而崩溃:
iisexpress.exe“wurde mit代码-1073741819(0xc0000005)”访问权限
“比恩德特”
调试时,在子组件上设置EventCallBack
后,它看起来会崩溃
parent.razor:
@page "/P"
<h3>Parent</h3>
Parent: @Name
<Child @bind-Name="Name" />
@code {
public string Name { get; set; } = "Bla";
}
@page”/P
父母亲
父项:@Name
@代码{
公共字符串名称{get;set;}=“Bla”;
}
儿童剃须刀
<h3>Child</h3>
Value: @Name
@code {
private string _Name;
[Parameter]
public string Name
{
get => Name; set
{
if (value != _Name)
{
_Name = value;
//NameChanged.InvokeAsync(_Name).Wait();
}
}
}
[Parameter]
public EventCallback<string> NameChanged { get; set; }
}
Child
值:@Name
@代码{
私有字符串\u名称;
[参数]
公共字符串名
{
get=>Name;set
{
如果(值!=\u名称)
{
_名称=值;
//NameChanged.InvokeAsync(_Name.Wait();
}
}
}
[参数]
公共事件回调名称已更改{get;set;}
}
编辑:在下一步中,我想更改子组件中的Name
字段,并使用回调函数将更改发送给父组件
有人有办法或想法获取更多信息吗?我建议你做几件事,让你继续前进 在子组件上,将
EventCallback
定义为一个参数。添加一些机制来更改Name
,然后调用EventCallback
。在本例中,我使用了一个文本框(带有双向绑定以保持Name
属性的最新)和一个按钮来调用回调
<h3>Child</h3>
<input @bind-Value="Name" />
<button @onclick="OnButtonClicked" >Click me</button>
@code {
[Parameter]
public string Name {get; set;}
[Parameter]
public EventCallback<string> NameChanged {get; set;}
public async Task OnButtonClicked(){
await NameChanged.InvokeAsync(Name);
}
}
Child
点击我
@代码{
[参数]
公共字符串名称{get;set;}
[参数]
公共事件回调名称已更改{get;set;}
公共异步任务OnButtonClicked(){
wait NameChanged.InvokeAsync(名称);
}
}
在父页面上,在页面初始化中设置默认字符串,然后将其绑定到子组件。还为从子组件冒泡的名称更改定义事件处理程序
@page "/mypage"
<h3>Parent</h3>
Parent: @Name
<Child Name="@Name" NameChanged="HandleNameChanged" }
@code {
public string Name { get; set; }
public override void OnInitialized(){
Name = "bla";
}
public void HandleNameChanged(string changedName){
Name = changedName;
}
}
@page”/mypage
父母亲
父项:@Name
我找到了答案……这是一个输入错误,输入的信息是beget=>\u Name
以访问支持字段
因此,它将进入一个无限循环,这将导致崩溃…嗨,马克,谢谢你的快速回答…很抱歉我的问题不清楚。在下一步中,我想更改子组件中的名称字段,并使用反回调函数将更改发送给父组件。你如何更改名称?使用文本框or什么的?我已经更新了这个例子,用一个文本框和一个按钮来对子组件进行更改